> ## Documentation Index
> Fetch the complete documentation index at: https://docs.conduit.financial/llms.txt
> Use this file to discover all available pages before exploring further.

# Preview payout requirements

> Evaluates a candidate `POST /v2/payouts` body for this customer and returns the same response shape as `GET /v2/payouts/requirements`, with one documented difference: `rail` can be absent here. Unlike the `GET`, `documentation.required` is the answer this customer gets for this candidate, which can differ in either direction from the purpose baseline the `GET` reports. `fields`, `whitelist` and `blockedJurisdictions` are derived from the candidate body the same way the `GET` derives them from its query. Creates nothing and records no policy decision. An `idempotency-key` header is rejected with 400 VALIDATION_ERROR: every call re-evaluates the candidate against current policy and rate data, so a cached reply could hand you a requirement that no longer holds. A candidate whose destination is `type: virtual_account` or `type: wallet` is a book transfer between your own accounts. It is answered, not refused: `documentation` carries the real verdict for it, `rail` is absent because no payment rail names a book transfer, and `fields` is empty. `documentation.due` says when a required document is asked for, and `due: post_acceptance` means an `rfi.published` webhook asks for it after the payout is accepted. Where the candidate cannot be paid out as submitted for a reason that is not documentation (a blocked jurisdiction, an unwhitelisted recipient, a destination or prefunding rejection), `documentation.evaluated` reads `false` alongside `documentation.required`, so such a candidate is distinguishable from a clean accept, which reads `evaluated: true` with the same `required: false`. This response does not carry that reason: submit the same body to `POST /v2/payouts` to see it. `documentation.amountValuation` reads `amountValuation: valued` where the payout amount was valued in USD for this answer, `amountValuation: rate_unavailable` where no exchange rate could value it, and `amountValuation: not_attempted` where this answer did not need that value. `documentation.degraded` reads `true` where a data source this answer needed was unavailable, so `required` is cautious rather than exact. The two are independent: an answer that does not rest on the amount stays exact, so it reads `degraded: false` even where `amountValuation` reads `amountValuation: rate_unavailable`, and an answer that rests on another unavailable source reads `degraded: true` even where `amountValuation` reads `amountValuation: valued`. The `GET` always reads `evaluated: true`, `amountValuation: not_attempted` and `degraded: false`, because it answers the purpose baseline unconditionally and takes no amount. A `customerId` that names no customer in the calling organization is rejected with 404 CUSTOMER_NOT_FOUND, the same as `POST /v2/payouts`.



## OpenAPI

````yaml https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts/requirements
openapi: 3.0.0
info:
  title: Conduit Sandbox API
  description: >-
    **Sandbox API** — clients integrate against this surface to exercise happy
    and unhappy paths without consuming real KYC/PSP credits or moving real
    money. Customer KYC, banking partners, and crypto custody are stubbed;
    org-level KYB runs against real providers. Simulation endpoints under
    `/v2/sandbox/*` drive specific scenarios.


    Internal and portal endpoints are excluded from this spec.
  version: '2.0'
  contact: {}
servers:
  - url: https://api.sandbox.conduit.financial/v2
    description: Sandbox
  - url: https://api.conduit.financial/v2
    description: Production
security:
  - api-key: []
tags:
  - name: Customers
  - name: Registered Addresses
  - name: Wallets
  - name: Wallet Signers
  - name: Signing Quorum
  - name: Virtual Accounts
  - name: Applications
  - name: RFIs
  - name: Documents
  - name: Verifications
  - name: Signing Requests
  - name: Transactions
  - name: Payouts
  - name: Whitelist Recipients
  - name: Orders
  - name: Asset Chain Pairs
  - name: Quotes
  - name: Webhook Endpoints
  - name: Webhook Deliveries
  - name: Webhook Event Types
  - name: Features
  - name: Customer Onboarding
  - name: Markup
  - name: Sandbox
paths:
  /payouts/requirements:
    post:
      tags:
        - Payouts
      summary: Preview payout requirements
      description: >-
        Evaluates a candidate `POST /v2/payouts` body for this customer and
        returns the same response shape as `GET /v2/payouts/requirements`, with
        one documented difference: `rail` can be absent here. Unlike the `GET`,
        `documentation.required` is the answer this customer gets for this
        candidate, which can differ in either direction from the purpose
        baseline the `GET` reports. `fields`, `whitelist` and
        `blockedJurisdictions` are derived from the candidate body the same way
        the `GET` derives them from its query. Creates nothing and records no
        policy decision. An `idempotency-key` header is rejected with 400
        VALIDATION_ERROR: every call re-evaluates the candidate against current
        policy and rate data, so a cached reply could hand you a requirement
        that no longer holds. A candidate whose destination is `type:
        virtual_account` or `type: wallet` is a book transfer between your own
        accounts. It is answered, not refused: `documentation` carries the real
        verdict for it, `rail` is absent because no payment rail names a book
        transfer, and `fields` is empty. `documentation.due` says when a
        required document is asked for, and `due: post_acceptance` means an
        `rfi.published` webhook asks for it after the payout is accepted. Where
        the candidate cannot be paid out as submitted for a reason that is not
        documentation (a blocked jurisdiction, an unwhitelisted recipient, a
        destination or prefunding rejection), `documentation.evaluated` reads
        `false` alongside `documentation.required`, so such a candidate is
        distinguishable from a clean accept, which reads `evaluated: true` with
        the same `required: false`. This response does not carry that reason:
        submit the same body to `POST /v2/payouts` to see it.
        `documentation.amountValuation` reads `amountValuation: valued` where
        the payout amount was valued in USD for this answer, `amountValuation:
        rate_unavailable` where no exchange rate could value it, and
        `amountValuation: not_attempted` where this answer did not need that
        value. `documentation.degraded` reads `true` where a data source this
        answer needed was unavailable, so `required` is cautious rather than
        exact. The two are independent: an answer that does not rest on the
        amount stays exact, so it reads `degraded: false` even where
        `amountValuation` reads `amountValuation: rate_unavailable`, and an
        answer that rests on another unavailable source reads `degraded: true`
        even where `amountValuation` reads `amountValuation: valued`. The `GET`
        always reads `evaluated: true`, `amountValuation: not_attempted` and
        `degraded: false`, because it answers the purpose baseline
        unconditionally and takes no amount. A `customerId` that names no
        customer in the calling organization is rejected with 404
        CUSTOMER_NOT_FOUND, the same as `POST /v2/payouts`.
      operationId: PayoutsController_previewRequirements_v2
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/CryptoPayoutDto'
                - $ref: '#/components/schemas/FiatPayoutDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayoutRequirementsPreviewResponseDto'
        '400':
          description: >-
            **INVALID_OID_FORMAT**: A path or query parameter expected a valid
            object identifier but received a value that does not match the
            expected format.


            **VALIDATION_ERROR**: The request body or query parameters failed
            validation. One or more fields have invalid values, missing required
            properties, or incorrect types. Multipart file uploads that fail at
            the multipart-parser layer (unexpected form-field name, too many
            parts) carry an extra 'field' member naming the offending
            form-field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrorDto'
              example:
                type: INVALID_OID_FORMAT
                title: Invalid Object ID Format
                status: 400
                detail: >-
                  A path or query parameter expected a valid object identifier
                  but received a value that does not match the expected format.
                resolution: >-
                  Verify that all IDs in the request URL and query parameters
                  are correctly formatted. IDs are typically prefixed strings
                  like 'cus_...', 'app_...', or 'doc_...'.
                docs: https://conduit-v2.mintlify.app/errors#invalid-oid-format
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
        '401':
          description: >-
            **API_KEY_MISSING**: The request did not include an API key. All API
            requests must be authenticated.


            **API_KEY_INVALID**: The provided API key is not recognized or has
            been revoked.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: API_KEY_MISSING
                title: API Key Missing
                status: 401
                detail: >-
                  The request did not include an API key. All API requests must
                  be authenticated.
                resolution: >-
                  Include your API key in the 'x-api-key' header with every
                  request.
                docs: https://conduit-v2.mintlify.app/errors#api-key-missing
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
        '404':
          description: >-
            **CUSTOMER_NOT_FOUND**: No customer exists with the specified ID, or
            the customer belongs to a different organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: CUSTOMER_NOT_FOUND
                title: Customer Not Found
                status: 404
                detail: >-
                  No customer exists with the specified ID, or the customer
                  belongs to a different organization.
                resolution: >-
                  Verify the customer ID is correct. Use the list customers
                  endpoint to find valid customer IDs for your organization.
                docs: https://conduit-v2.mintlify.app/errors#customer-not-found
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
        '429':
          description: >-
            **RATE_LIMITED**: Too many requests. This error is returned by three
            independent checks: the per-organization bucket applied to every
            authenticated API request; the per-IP bucket applied to
            unauthenticated traffic before an API key is validated; and the
            per-IP bucket applied when repeated invalid API keys are submitted
            from the same address. Honor the Retry-After header (also exposed as
            retryAfterSeconds in the body) before retrying. Current limits and
            remaining budget are visible in X-RateLimit-Limit,
            X-RateLimit-Remaining, and X-RateLimit-Reset on rate-limited route
            responses.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorDto'
              example:
                type: RATE_LIMITED
                title: Rate Limited
                status: 429
                detail: >-
                  Too many requests. This error is returned by three independent
                  checks: the per-organization bucket applied to every
                  authenticated API request; the per-IP bucket applied to
                  unauthenticated traffic before an API key is validated; and
                  the per-IP bucket applied when repeated invalid API keys are
                  submitted from the same address. Honor the Retry-After header
                  (also exposed as retryAfterSeconds in the body) before
                  retrying. Current limits and remaining budget are visible in
                  X-RateLimit-Limit, X-RateLimit-Remaining, and
                  X-RateLimit-Reset on rate-limited route responses.
                resolution: >-
                  Sleep until Retry-After seconds have elapsed, then retry. For
                  sustained workloads exceeding the per-organization defaults,
                  request a rate-limit increase through your support contact.
                docs: https://conduit-v2.mintlify.app/errors#rate-limited
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
                retryAfterSeconds: 3
        '500':
          description: >-
            **INTERNAL_ERROR**: An unexpected error occurred while processing
            your request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: INTERNAL_ERROR
                title: Internal Error
                status: 500
                detail: An unexpected error occurred while processing your request.
                resolution: >-
                  Retry the request after a brief delay. If the error persists,
                  contact support and include the correlationId from the error
                  response for investigation.
                docs: https://conduit-v2.mintlify.app/errors#internal-error
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
        '503':
          description: >-
            **POLICY_EVALUATION_UNAVAILABLE**: The documentation policy could
            not be evaluated because a policy lookup did not complete. No
            transaction was created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: POLICY_EVALUATION_UNAVAILABLE
                title: Policy Evaluation Unavailable
                status: 503
                detail: >-
                  The documentation policy could not be evaluated because a
                  policy lookup did not complete. No transaction was created.
                resolution: >-
                  Retry the request using exponential backoff. If the error
                  persists, contact support.
                docs: >-
                  https://conduit-v2.mintlify.app/errors#policy-evaluation-unavailable
                instance: /v2/...
                correlationId: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
                timestamp: '2026-01-15T09:30:00.000Z'
components:
  schemas:
    CryptoPayoutDto:
      type: object
      properties:
        customerId:
          type: string
          pattern: ^cus_[0-9A-Za-z]{22}$
        clientReferenceId:
          type: string
          pattern: ^[A-Za-z0-9_\-:.]{1,255}$
          description: >-
            Client-supplied reference, unique per resource within your
            organization. 1-255 characters from A-Za-z, 0-9, underscore, hyphen,
            colon, and period — no spaces.
        sourceWalletId:
          description: >-
            Wallet to spend from. Omit to use the customer's oldest active
            wallet on the asset's chain.
          type: string
          pattern: ^wlt_[0-9A-Za-z]{22}$
        assetAmount:
          type: object
          properties:
            code:
              type: string
              enum:
                - USD
                - EUR
                - GBP
                - CHF
                - JPY
                - CAD
                - AUD
                - NZD
                - SGD
                - HKD
                - CNY
                - KRW
                - INR
                - BRL
                - MXN
                - ARS
                - CLP
                - COP
                - PEN
                - ZAR
                - NGN
                - KES
                - GHS
                - EGP
                - AED
                - SAR
                - ILS
                - TRY
                - PLN
                - CZK
                - HUF
                - SEK
                - NOK
                - DKK
                - THB
                - IDR
                - MYR
                - PHP
                - VND
                - TWD
                - USDC
                - USDT
                - DAI
                - EURC
                - PYUSD
                - BTC
                - ETH
                - SOL
                - TRX
                - XLM
                - POL
              description: Asset code (USDC, USD, etc.)
            chain:
              description: >-
                Chain when the asset is on-chain; omitted for fiat. Accepts
                uppercase or lowercase on input.
              type: string
              enum:
                - ethereum
                - base
                - solana
                - polygon
                - tron
                - stellar
            amount:
              type: string
              description: Decimal string, asset-precision rounded
          required:
            - code
            - amount
          additionalProperties: false
        destination:
          oneOf:
            - type: object
              properties:
                recipient:
                  type: object
                  properties:
                    chain:
                      type: string
                      enum:
                        - ethereum
                        - base
                        - solana
                        - polygon
                        - tron
                        - stellar
                    address:
                      type: string
                      minLength: 1
                      maxLength: 255
                    attestation:
                      type: object
                      properties:
                        custody:
                          type: string
                          enum:
                            - self
                            - third_party
                      required:
                        - custody
                      additionalProperties: false
                    type:
                      type: string
                      enum:
                        - individual
                        - business
                    firstName:
                      type: string
                      maxLength: 70
                    lastName:
                      type: string
                      maxLength: 70
                    legalName:
                      type: string
                      maxLength: 140
                    dateOfBirth:
                      type: string
                      format: date
                      pattern: >-
                        ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                    countryOfCitizenship:
                      type: string
                    countryOfRegistration:
                      type: string
                    postalAddress:
                      type: object
                      properties:
                        addressLine1:
                          type: string
                          maxLength: 120
                        addressLine2:
                          type: string
                          maxLength: 120
                        city:
                          type: string
                          maxLength: 80
                        state:
                          type: string
                          maxLength: 80
                        postalCode:
                          type: string
                          maxLength: 32
                        country:
                          type: string
                      required:
                        - addressLine1
                        - city
                        - country
                      additionalProperties: false
                    phone:
                      type: string
                      maxLength: 40
                  required:
                    - chain
                    - address
                    - attestation
                  additionalProperties: false
                memo:
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - text
                        value:
                          type: string
                          minLength: 1
                      required:
                        - type
                        - value
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - id
                        value:
                          type: string
                      required:
                        - type
                        - value
                      additionalProperties: false
                  description: >-
                    Destination memo (destination tag) for the receiving
                    account. Required by shared custodial addresses such as
                    exchanges. Only accepted on chains whose payments carry a
                    memo.
                type:
                  type: string
                  enum:
                    - crypto
              required:
                - recipient
                - type
              additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - wallet
                walletId:
                  type: string
                  pattern: ^wlt_[0-9A-Za-z]{22}$
                  description: >-
                    Another active wallet of the same customer, on the asset's
                    chain.
                remittance:
                  description: >-
                    Free-text reference and description carried on both halves
                    of the transfer.
                  type: object
                  properties:
                    reference:
                      type: string
                      maxLength: 140
                    description:
                      type: string
                      maxLength: 280
              required:
                - type
                - walletId
              additionalProperties: false
        purpose:
          type: string
          enum:
            - intercompany
            - treasury_management
            - payment_for_goods_or_services
            - payroll
            - investments
            - other
            - prefunding
          description: >-
            Declared business purpose of this payout. Drives documentation
            requirements and whitelist policy.
        documents:
          description: >-
            IDs of previously uploaded supporting documents (doc_*), must be
            uploaded with purpose transaction_support. Maximum 10.
          maxItems: 10
          type: array
          items:
            type: string
            pattern: ^doc_[0-9A-Za-z]{22}$
        markupBps:
          description: >-
            Your own margin on this payout, in basis points of the amount it
            moves, to two decimal places. A payout has no exchange rate to
            widen, so this is charged as a fee on top of the amount you asked us
            to send: the recipient still receives assetAmount in full, and the
            source virtual account is debited that amount plus Conduit's fee
            plus your margin. It reads back on the payout's fees[] as an entry
            owned by you, and it is accrued to you once the payout succeeds,
            then paid monthly against a statement. Crypto payouts cannot carry a
            margin. Requires markup to be enabled for your organization.
          type: number
          minimum: 0.01
          maximum: 99999.99
          multipleOf: 0.01
        markupAmount:
          description: >-
            Your own margin on this payout as a flat amount per transaction, in
            the payout's asset and at that asset's precision. Charged the same
            way as markupBps, on top of the amount the recipient receives. Send
            it alongside markupBps, on its own, or omit both. Crypto payouts
            cannot carry a margin.
          type: string
      required:
        - customerId
        - assetAmount
        - destination
        - purpose
      additionalProperties: false
    FiatPayoutDto:
      type: object
      properties:
        customerId:
          type: string
          pattern: ^cus_[0-9A-Za-z]{22}$
        clientReferenceId:
          type: string
          pattern: ^[A-Za-z0-9_\-:.]{1,255}$
          description: >-
            Client-supplied reference, unique per resource within your
            organization. 1-255 characters from A-Za-z, 0-9, underscore, hyphen,
            colon, and period — no spaces.
        virtualAccountId:
          type: string
          pattern: ^vac_[0-9A-Za-z]{22}$
        assetAmount:
          type: object
          properties:
            code:
              type: string
              enum:
                - USD
                - EUR
                - GBP
                - CHF
                - JPY
                - CAD
                - AUD
                - NZD
                - SGD
                - HKD
                - CNY
                - KRW
                - INR
                - BRL
                - MXN
                - ARS
                - CLP
                - COP
                - PEN
                - ZAR
                - NGN
                - KES
                - GHS
                - EGP
                - AED
                - SAR
                - ILS
                - TRY
                - PLN
                - CZK
                - HUF
                - SEK
                - NOK
                - DKK
                - THB
                - IDR
                - MYR
                - PHP
                - VND
                - TWD
                - USDC
                - USDT
                - DAI
                - EURC
                - PYUSD
                - BTC
                - ETH
                - SOL
                - TRX
                - XLM
                - POL
              description: Asset code (USDC, USD, etc.)
            chain:
              description: >-
                Chain when the asset is on-chain; omitted for fiat. Accepts
                uppercase or lowercase on input.
              type: string
              enum:
                - ethereum
                - base
                - solana
                - polygon
                - tron
                - stellar
            amount:
              type: string
              description: Decimal string, asset-precision rounded
          required:
            - code
            - amount
          additionalProperties: false
        destination:
          anyOf:
            - oneOf:
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - fedwire
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - rtp
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - fednow
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - ach
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                              pattern: ^[0-9]+$
                            routingNumber:
                              type: string
                            accountType:
                              type: string
                              enum:
                                - checking
                                - savings
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              description: >-
                                Address of the recipient's bank. Omit it and
                                Conduit derives it from `routingNumber`; the
                                payout is refused if the routing number is not
                                in the US routing-number directory.
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - routingNumber
                            - accountType
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - swift
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                            iban:
                              type: string
                            bic:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - bic
                            - bankAddress
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                              minLength: 4
                              maxLength: 64
                            iban:
                              type: string
                            bic:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - bic
                            - bankAddress
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - sepa
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            iban:
                              type: string
                            bic:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - iban
                            - bic
                            - bankAddress
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            iban:
                              type: string
                            bic:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - iban
                            - bic
                            - bankAddress
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - faster_payments
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                            sortCode:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - sortCode
                            - bankAddress
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                            sortCode:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - sortCode
                            - bankAddress
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - chaps
                    recipient:
                      oneOf:
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                            sortCode:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - individual
                            firstName:
                              type: string
                              maxLength: 70
                            lastName:
                              type: string
                              maxLength: 70
                            dateOfBirth:
                              type: string
                              format: date
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                            countryOfCitizenship:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - sortCode
                            - bankAddress
                            - type
                            - firstName
                            - lastName
                            - postalAddress
                          additionalProperties: false
                        - type: object
                          properties:
                            accountNumber:
                              type: string
                            sortCode:
                              type: string
                            bankName:
                              type: string
                              maxLength: 140
                            bankAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                            phone:
                              description: >-
                                Recipient contact phone. Optional; forwarded to
                                the banking partner when provided.
                              type: string
                              maxLength: 40
                            type:
                              type: string
                              enum:
                                - business
                            legalName:
                              type: string
                              maxLength: 140
                            countryOfRegistration:
                              type: string
                            postalAddress:
                              type: object
                              properties:
                                addressLine1:
                                  type: string
                                  maxLength: 120
                                addressLine2:
                                  type: string
                                  maxLength: 120
                                city:
                                  type: string
                                  maxLength: 80
                                state:
                                  type: string
                                  maxLength: 80
                                postalCode:
                                  type: string
                                  maxLength: 32
                                country:
                                  type: string
                              required:
                                - addressLine1
                                - city
                                - country
                              additionalProperties: false
                          required:
                            - accountNumber
                            - sortCode
                            - bankAddress
                            - type
                            - legalName
                            - postalAddress
                          additionalProperties: false
                    ach:
                      type: object
                      properties:
                        authorizationType:
                          type: string
                          enum:
                            - corporate_agreement
                            - written
                            - web
                      required:
                        - authorizationType
                    swift:
                      type: object
                      properties:
                        purposeOfPayment:
                          type: string
                          maxLength: 140
                    instant:
                      type: object
                      properties:
                        receiverNetworkPreference:
                          type: string
                          enum:
                            - tch
                            - fednow
                    remittance:
                      type: object
                      properties:
                        reference:
                          type: string
                          maxLength: 140
                        description:
                          type: string
                          maxLength: 280
                    type:
                      type: string
                      enum:
                        - fiat
                  required:
                    - rail
                    - recipient
                    - type
                  additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - virtual_account
                virtualAccountId:
                  type: string
                  pattern: ^vac_[0-9A-Za-z]{22}$
                  description: >-
                    Another active virtual account in the same organization,
                    holding the same currency. Any customer of the organization
                    is allowed.
                remittance:
                  description: >-
                    Free-text reference and description carried on both halves
                    of the transfer.
                  type: object
                  properties:
                    reference:
                      type: string
                      maxLength: 140
                    description:
                      type: string
                      maxLength: 280
              required:
                - type
                - virtualAccountId
              additionalProperties: false
        purpose:
          type: string
          enum:
            - intercompany
            - treasury_management
            - payment_for_goods_or_services
            - payroll
            - investments
            - other
            - prefunding
          description: >-
            Declared business purpose of this payout. Drives documentation
            requirements and whitelist policy. A chaps payout cannot declare
            other: the CHAPS scheme carries an ISO 20022 purpose code and other
            names none.
        documents:
          description: >-
            IDs of previously uploaded supporting documents (doc_*), must be
            uploaded with purpose transaction_support. Maximum 10.
          maxItems: 10
          type: array
          items:
            type: string
            pattern: ^doc_[0-9A-Za-z]{22}$
        markupBps:
          description: >-
            Your own margin on this payout, in basis points of the amount it
            moves, to two decimal places. A payout has no exchange rate to
            widen, so this is charged as a fee on top of the amount you asked us
            to send: the recipient still receives assetAmount in full, and the
            source virtual account is debited that amount plus Conduit's fee
            plus your margin. It reads back on the payout's fees[] as an entry
            owned by you, and it is accrued to you once the payout succeeds,
            then paid monthly against a statement. Crypto payouts cannot carry a
            margin. Requires markup to be enabled for your organization.
          type: number
          minimum: 0.01
          maximum: 99999.99
          multipleOf: 0.01
        markupAmount:
          description: >-
            Your own margin on this payout as a flat amount per transaction, in
            the payout's asset and at that asset's precision. Charged the same
            way as markupBps, on top of the amount the recipient receives. Send
            it alongside markupBps, on its own, or omit both. Crypto payouts
            cannot carry a margin.
          type: string
      required:
        - customerId
        - virtualAccountId
        - assetAmount
        - destination
        - purpose
      additionalProperties: false
    PayoutRequirementsPreviewResponseDto:
      type: object
      properties:
        rail:
          description: >-
            The rail this answer describes. Absent where the candidate is a book
            transfer between the client's own accounts — a `virtual_account` or
            `wallet` destination — which no payment rail names; `fields` is then
            empty and `documentation` still carries the real answer.
          type: string
          enum:
            - crypto
            - fedwire
            - rtp
            - fednow
            - ach
            - swift
            - sepa
            - faster_payments
            - chaps
        fields:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                description: >-
                  Where the value belongs in the create body, as a dotted path —
                  not a display label. `destination.recipient.accountNumber`
                  means `{ destination: { recipient: { accountNumber } } }`.
                example: destination.recipient.accountNumber
              type:
                type: string
                enum:
                  - string
                  - number
                  - boolean
                  - date
                  - email
                description: >-
                  Kind of value to send. `date` and `email` are sent as JSON
                  strings.
              required:
                type: boolean
                description: >-
                  Whether the field must always be sent. A field that is
                  required only in some cases carries `requiredWhen` instead.
              minLength:
                description: Shortest accepted value, for a string field.
                type: number
              maxLength:
                description: Longest accepted value, for a string field.
                type: number
              pattern:
                description: >-
                  Regular expression the value must match. Anchor it yourself
                  unless it already carries `^` and `$`.
                type: string
              enum:
                description: Closed set of accepted values. Send one of them verbatim.
                type: array
                items:
                  type: string
              validator:
                description: >-
                  An extra checksum rule beyond `pattern`: `ABA` for a US
                  routing number, `IBAN` for an international account number.
                type: string
                enum:
                  - aba
                  - iban
              requiredWhen:
                description: >-
                  Makes the field required only when this condition holds. The
                  condition reads another field in the same body by its `name`.
                anyOf:
                  - type: object
                    properties:
                      field:
                        type: string
                        description: The `name` of the field this condition reads.
                      equals:
                        type: string
                        description: The condition holds when that field has this value.
                    required:
                      - field
                      - equals
                    additionalProperties: false
                  - type: object
                    properties:
                      field:
                        type: string
                        description: The `name` of the field this condition reads.
                      notIn:
                        minItems: 1
                        type: array
                        items:
                          type: string
                        description: >-
                          The condition holds when that field's value is none of
                          these.
                    required:
                      - field
                      - notIn
                    additionalProperties: false
              mustEqual:
                description: >-
                  The field must carry exactly this value. Used for attestations
                  that only one answer can satisfy.
                anyOf:
                  - type: string
                  - type: boolean
                  - type: number
            required:
              - name
              - type
              - required
        documentation:
          type: object
          properties:
            required:
              type: boolean
            evaluated:
              type: boolean
              description: >-
                Whether the document question was answered for this candidate.
                `false` means this candidate cannot be paid out as submitted for
                a reason that is not documentation — a blocked jurisdiction, an
                unwhitelisted recipient, or a destination or prefunding
                rejection — so `required: false` means the question was not
                answered, not that no document is needed. Send the same body to
                POST /v2/payouts to see that reason. GET
                /v2/payouts/requirements always returns `true`.
            degraded:
              type: boolean
              description: >-
                Whether `required` is cautious rather than exact because a data
                source this answer needed was unavailable. `true` means a
                document is reported as required where a complete answer might
                not have asked for one: attach a document, or preview again
                later. `false` means `required` is exact for this candidate. An
                unvalued amount is one such source, so `degraded` can read
                `true` alongside any `amountValuation` value. GET
                /v2/payouts/requirements always returns `false`, because it
                answers the purpose baseline and needs no such source.
            amountValuation:
              description: >-
                Whether the payout amount was valued in USD for this preview.
                `valued`: it was. `rate_unavailable`: no exchange rate was
                available for it, so the answer was reached without the amount's
                USD value — read `degraded` for whether that made `required`
                cautious, and preview again once the amount can be valued.
                `not_attempted`: this answer did not need the amount's USD
                value. GET /v2/payouts/requirements always returns
                `not_attempted`, because it takes no amount.
              type: string
              enum:
                - valued
                - rate_unavailable
                - not_attempted
            due:
              description: >-
                When a required document is due for the calling organization.
                `pre_acceptance`: attach it to POST /v2/payouts or the payout is
                rejected with 422 DOCUMENTATION_REQUIRED. `post_acceptance`: the
                payout is accepted without one and a request for information
                asks for it.
              type: string
              enum:
                - pre_acceptance
                - post_acceptance
            reason:
              type: string
            acceptedDocumentTypes:
              type: array
              items:
                type: string
                enum:
                  - bank_verification_letter
                  - invoice
                  - contract
                  - payroll_register
                  - investment_agreement
                  - other
          required:
            - required
            - evaluated
            - degraded
            - amountValuation
            - due
            - acceptedDocumentTypes
        whitelist:
          type: object
          properties:
            required:
              type: boolean
            reason:
              type: string
          required:
            - required
        blockedJurisdictions:
          type: array
          items:
            type: string
            enum:
              - AFG
              - ALB
              - DZA
              - ASM
              - AND
              - AGO
              - AIA
              - ATA
              - ATG
              - ARG
              - ARM
              - ABW
              - AUS
              - AUT
              - AZE
              - BHS
              - BHR
              - BGD
              - BRB
              - BLR
              - BEL
              - BLZ
              - BEN
              - BMU
              - BTN
              - BOL
              - BES
              - BIH
              - BWA
              - BVT
              - BRA
              - IOT
              - BRN
              - BGR
              - BFA
              - BDI
              - CPV
              - KHM
              - CMR
              - CAN
              - CYM
              - CAF
              - TCD
              - CHL
              - CHN
              - CXR
              - CCK
              - COL
              - COM
              - COG
              - COD
              - COK
              - CRI
              - CIV
              - HRV
              - CUB
              - CUW
              - CYP
              - CZE
              - DNK
              - DJI
              - DMA
              - DOM
              - ECU
              - EGY
              - SLV
              - GNQ
              - ERI
              - EST
              - SWZ
              - ETH
              - FLK
              - FRO
              - FJI
              - FIN
              - FRA
              - GUF
              - PYF
              - ATF
              - GAB
              - GMB
              - GEO
              - DEU
              - GHA
              - GIB
              - GRC
              - GRL
              - GRD
              - GLP
              - GUM
              - GTM
              - GGY
              - GIN
              - GNB
              - GUY
              - HTI
              - HMD
              - VAT
              - HND
              - HKG
              - HUN
              - ISL
              - IND
              - IDN
              - IRN
              - IRQ
              - IRL
              - IMN
              - ISR
              - ITA
              - JAM
              - JPN
              - JEY
              - JOR
              - KAZ
              - KEN
              - KIR
              - PRK
              - KOR
              - KWT
              - KGZ
              - LAO
              - LVA
              - LBN
              - LSO
              - LBR
              - LBY
              - LIE
              - LTU
              - LUX
              - MAC
              - MDG
              - MWI
              - MYS
              - MDV
              - MLI
              - MLT
              - MHL
              - MTQ
              - MRT
              - MUS
              - MYT
              - MEX
              - FSM
              - MDA
              - MCO
              - MNG
              - MNE
              - MSR
              - MAR
              - MOZ
              - MMR
              - NAM
              - NRU
              - NPL
              - NLD
              - NCL
              - NZL
              - NIC
              - NER
              - NGA
              - NIU
              - NFK
              - MKD
              - MNP
              - NOR
              - OMN
              - PAK
              - PLW
              - PSE
              - PAN
              - PNG
              - PRY
              - PER
              - PHL
              - PCN
              - POL
              - PRT
              - PRI
              - QAT
              - REU
              - ROU
              - RUS
              - RWA
              - BLM
              - SHN
              - KNA
              - LCA
              - MAF
              - SPM
              - VCT
              - WSM
              - SMR
              - STP
              - SAU
              - SEN
              - SRB
              - SYC
              - SLE
              - SGP
              - SXM
              - SVK
              - SVN
              - SLB
              - SOM
              - ZAF
              - SGS
              - SSD
              - ESP
              - LKA
              - SDN
              - SUR
              - SJM
              - SWE
              - CHE
              - SYR
              - TWN
              - TJK
              - TZA
              - THA
              - TLS
              - TGO
              - TKL
              - TON
              - TTO
              - TUN
              - TUR
              - TKM
              - TCA
              - TUV
              - UGA
              - UKR
              - ARE
              - GBR
              - USA
              - UMI
              - URY
              - UZB
              - VUT
              - VEN
              - VNM
              - VGB
              - VIR
              - WLF
              - ESH
              - YEM
              - ZMB
              - ZWE
          description: >-
            Countries this rail cannot pay to, as ISO 3166-1 alpha-3 codes. A
            payout whose recipient country appears here is rejected.
      required:
        - fields
        - documentation
        - whitelist
        - blockedJurisdictions
    ValidationErrorDto:
      type: object
      properties:
        type:
          type: string
          description: Machine-readable error code
          example: CUSTOMER_NOT_FOUND
        title:
          type: string
          description: Human-readable error type label
          example: Customer Not Found
        status:
          type: number
          description: HTTP status code
          example: 404
        detail:
          type: string
          description: Human-readable explanation of this occurrence
          example: Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found
        resolution:
          type: string
          description: What the developer should do to resolve this error
          example: >-
            Verify the customer ID. Check you are using the correct API key for
            this organization.
        docs:
          type: string
          description: URL to error documentation
          example: https://conduit-v2.mintlify.app/errors#customer-not-found
        instance:
          type: string
          description: Request path that produced the error
          example: /v2/customers/cus_034A0gCCVsxdV2PjHLx9k1
        correlationId:
          description: Request correlation ID
          example: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
          type: string
        timestamp:
          type: string
          description: ISO 8601 UTC timestamp
          example: '2026-04-27T20:00:00.000Z'
        details:
          description: >-
            Additional structured data for domain-specific errors (e.g. missing
            field lists, pair info)
        errors:
          type: array
          items:
            type: object
            properties:
              pointer:
                type: string
                description: JSON pointer to the invalid field
                example: /email
              detail:
                type: string
                description: What is wrong with this field
                example: Invalid email format
              allowedValues:
                description: The values this field accepts, when it is a closed set
                example:
                  - ach
                  - fedwire
                  - rtp
                type: array
                items:
                  type: string
              category:
                description: >-
                  Class of blocker (requirements-validator output only). 'field'
                  = form-field gap, 'document' = missing or insufficient
                  document (including per-UBO document slots), 'individual' =
                  required person missing.
                example: field
                type: string
                enum:
                  - field
                  - document
                  - individual
            required:
              - pointer
              - detail
      required:
        - type
        - title
        - status
        - detail
        - resolution
        - docs
        - instance
        - timestamp
    ProblemDetailDto:
      type: object
      properties:
        type:
          type: string
          description: Machine-readable error code
          example: CUSTOMER_NOT_FOUND
        title:
          type: string
          description: Human-readable error type label
          example: Customer Not Found
        status:
          type: number
          description: HTTP status code
          example: 404
        detail:
          type: string
          description: Human-readable explanation of this occurrence
          example: Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found
        resolution:
          type: string
          description: What the developer should do to resolve this error
          example: >-
            Verify the customer ID. Check you are using the correct API key for
            this organization.
        docs:
          type: string
          description: URL to error documentation
          example: https://conduit-v2.mintlify.app/errors#customer-not-found
        instance:
          type: string
          description: Request path that produced the error
          example: /v2/customers/cus_034A0gCCVsxdV2PjHLx9k1
        correlationId:
          description: Request correlation ID
          example: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
          type: string
        timestamp:
          type: string
          description: ISO 8601 UTC timestamp
          example: '2026-04-27T20:00:00.000Z'
        details:
          description: >-
            Additional structured data for domain-specific errors (e.g. missing
            field lists, pair info)
      required:
        - type
        - title
        - status
        - detail
        - resolution
        - docs
        - instance
        - timestamp
    RateLimitedErrorDto:
      type: object
      properties:
        type:
          type: string
          description: Machine-readable error code
          example: CUSTOMER_NOT_FOUND
        title:
          type: string
          description: Human-readable error type label
          example: Customer Not Found
        status:
          type: number
          description: HTTP status code
          example: 404
        detail:
          type: string
          description: Human-readable explanation of this occurrence
          example: Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found
        resolution:
          type: string
          description: What the developer should do to resolve this error
          example: >-
            Verify the customer ID. Check you are using the correct API key for
            this organization.
        docs:
          type: string
          description: URL to error documentation
          example: https://conduit-v2.mintlify.app/errors#customer-not-found
        instance:
          type: string
          description: Request path that produced the error
          example: /v2/customers/cus_034A0gCCVsxdV2PjHLx9k1
        correlationId:
          description: Request correlation ID
          example: 00469ea4-52c1-4ffa-bd05-9f28b236a5fe
          type: string
        timestamp:
          type: string
          description: ISO 8601 UTC timestamp
          example: '2026-04-27T20:00:00.000Z'
        details:
          description: >-
            Additional structured data for domain-specific errors (e.g. missing
            field lists, pair info)
        retryAfterSeconds:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          maximum: 9007199254740991
          description: Seconds to wait before retrying
          example: 3
      required:
        - type
        - title
        - status
        - detail
        - resolution
        - docs
        - instance
        - timestamp
        - retryAfterSeconds
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: x-api-key

````