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

# Simulate an overall conversion failure for a sandbox order

> Forces the order's conversion to a failed terminal state. Safe to call at any point after order creation while the order is still pending: if the conversion is already running, it is driven to failed immediately; otherwise the failure is armed and applied as soon as the conversion starts. The order is driven to failed and a failure event is published. The optional `reason` body field is propagated to the public `order.failed.failureMessage` so QA / integrators can correlate the simulator call with the resulting webhook. Returns 404 if the order is not found in the org. Replay (caller asks for `conversion-failed` against an already-terminal order) returns 200 with the order at its current state. Returns the order at its current state.



## OpenAPI

````yaml https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{id}/simulate/conversion-failed
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: Documents
  - name: Verifications
  - name: Signing Requests
  - name: Transactions
  - name: Payouts
  - name: Whitelist Recipients
  - name: Orders
  - name: RFIs
  - name: Webhook Endpoints
  - name: Webhook Deliveries
  - name: Webhook Event Types
  - name: Features
  - name: Customer Onboarding
  - name: Sandbox
paths:
  /sandbox/orders/{id}/simulate/conversion-failed:
    post:
      tags:
        - Sandbox
      summary: Simulate an overall conversion failure for a sandbox order
      description: >-
        Forces the order's conversion to a failed terminal state. Safe to call
        at any point after order creation while the order is still pending: if
        the conversion is already running, it is driven to failed immediately;
        otherwise the failure is armed and applied as soon as the conversion
        starts. The order is driven to failed and a failure event is published.
        The optional `reason` body field is propagated to the public
        `order.failed.failureMessage` so QA / integrators can correlate the
        simulator call with the resulting webhook. Returns 404 if the order is
        not found in the org. Replay (caller asks for `conversion-failed`
        against an already-terminal order) returns 200 with the order at its
        current state. Returns the order at its current state.
      operationId: OrdersSimulatePerLegSandboxController_simulateConversionFailed_v2
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SimulateOrderConversionFailedDtoClass'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderExternalResponseDto'
        '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.


            **MALFORMED_JSON**: The request body could not be parsed as JSON.
            Bodies declared as 'application/json' — and bodies with no
            Content-Type header, which are assumed to be JSON — must contain
            syntactically valid JSON.
          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: req_a1b2c3d4
                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: req_a1b2c3d4
                timestamp: '2026-01-15T09:30:00.000Z'
        '403':
          description: >-
            **API_KEY_READ_ONLY**: This API key has read-only access and cannot
            perform write operations. Read-only keys may make read requests
            (GET, HEAD, OPTIONS) only.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: API_KEY_READ_ONLY
                title: API Key Is Read-Only
                status: 403
                detail: >-
                  This API key has read-only access and cannot perform write
                  operations. Read-only keys may make read requests (GET, HEAD,
                  OPTIONS) only.
                resolution: >-
                  Use a read-write API key for this request, or have an
                  organization admin mint one from the dashboard.
                docs: https://conduit-v2.mintlify.app/errors#api-key-read-only
                instance: /v2/...
                correlationId: req_a1b2c3d4
                timestamp: '2026-01-15T09:30:00.000Z'
        '404':
          description: >-
            **ORDER_NOT_FOUND**: No order exists with the specified ID, or the
            order has expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: ORDER_NOT_FOUND
                title: Order Not Found
                status: 404
                detail: >-
                  No order exists with the specified ID, or the order has
                  expired.
                resolution: >-
                  Verify the order ID is correct. Orders have a limited validity
                  period; create a new order if the previous one has expired.
                docs: https://conduit-v2.mintlify.app/errors#order-not-found
                instance: /v2/...
                correlationId: req_a1b2c3d4
                timestamp: '2026-01-15T09:30:00.000Z'
        '415':
          description: >-
            **UNSUPPORTED_MEDIA_TYPE**: The request carries a body with a
            Content-Type this endpoint cannot parse. JSON endpoints accept
            'application/json'; a body with no Content-Type header at all is
            assumed to be JSON. File-upload endpoints accept only
            'multipart/form-data' — JSON or undeclared bodies are rejected
            there.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailDto'
              example:
                type: UNSUPPORTED_MEDIA_TYPE
                title: Unsupported Media Type
                status: 415
                detail: >-
                  The request carries a body with a Content-Type this endpoint
                  cannot parse. JSON endpoints accept 'application/json'; a body
                  with no Content-Type header at all is assumed to be JSON.
                  File-upload endpoints accept only 'multipart/form-data' — JSON
                  or undeclared bodies are rejected there.
                resolution: >-
                  Send the request body with the 'Content-Type:
                  application/json' header. For file uploads, use 'Content-Type:
                  multipart/form-data' — upload endpoints accept no other body
                  type.
                docs: https://conduit-v2.mintlify.app/errors#unsupported-media-type
                instance: /v2/...
                correlationId: req_a1b2c3d4
                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: req_a1b2c3d4
                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: req_a1b2c3d4
                timestamp: '2026-01-15T09:30:00.000Z'
components:
  schemas:
    SimulateOrderConversionFailedDtoClass:
      type: object
      properties:
        reason:
          description: >-
            Optional free-text reason surfaced as `failureMessage` on the
            `order.failed` webhook and the polled `GET /v2/orders/:id` response.
          type: string
          maxLength: 500
      additionalProperties: false
    OrderExternalResponseDto:
      type: object
      properties:
        id:
          type: string
          pattern: ^ord_[0-9A-Za-z]{22}$
        customerId:
          type: string
          pattern: ^cus_[0-9A-Za-z]{22}$
          nullable: true
        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.
        status:
          type: string
          enum:
            - pending
            - succeeded
            - failed
            - cancelled
        type:
          type: string
          enum:
            - onramp
            - offramp
            - conversion
        source:
          description: >-
            The funding resource, when the order named one. Omitted entirely on
            a deposit-funded order (created without a `source`): the funding
            wallet is Conduit-managed infrastructure with no client-resolvable
            id, and `depositInstructions` carries the address to fund at
            instead. The presence of `depositInstructions` is the discriminator.
          oneOf:
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - wallet
                id:
                  type: string
                  pattern: ^wlt_[0-9A-Za-z]{22}$
              required:
                - type
                - id
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - virtual_account
                id:
                  type: string
                  pattern: ^vac_[0-9A-Za-z]{22}$
              required:
                - type
                - id
        destination:
          oneOf:
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - wallet
                id:
                  type: string
                  pattern: ^wlt_[0-9A-Za-z]{22}$
              required:
                - type
                - id
            - type: object
              properties:
                type:
                  type: string
                  enum:
                    - virtual_account
                id:
                  type: string
                  pattern: ^vac_[0-9A-Za-z]{22}$
              required:
                - type
                - id
        sourceAsset:
          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
              description: Asset code (USDC, USD, etc.)
            chain:
              description: Chain when the asset is on-chain; omitted for fiat.
              type: string
              enum:
                - ethereum
                - base
                - solana
                - polygon
                - arbitrum
                - optimism
                - avalanche
                - tron
                - stellar
                - bsc
                - bitcoin
            amount:
              type: string
              description: Decimal string, asset-precision rounded
          required:
            - code
            - amount
          additionalProperties: false
        destinationAsset:
          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
              description: Asset code (USDC, USD, etc.)
            chain:
              description: Chain when the asset is on-chain; omitted for fiat.
              type: string
              enum:
                - ethereum
                - base
                - solana
                - polygon
                - arbitrum
                - optimism
                - avalanche
                - tron
                - stellar
                - bsc
                - bitcoin
            amount:
              type: string
              description: Decimal string, asset-precision rounded
          required:
            - code
            - amount
          additionalProperties: false
        lockSide:
          type: string
          enum:
            - source
            - destination
        autoPayout:
          type: object
          properties:
            recipient:
              oneOf:
                - oneOf:
                    - type: object
                      properties:
                        rail:
                          type: string
                          enum:
                            - us
                        accountNumber:
                          type: string
                          minLength: 4
                          maxLength: 64
                        routingNumber:
                          type: string
                        accountType:
                          type: string
                          enum:
                            - checking
                            - savings
                        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:
                        - rail
                        - accountNumber
                        - routingNumber
                        - accountType
                        - bankAddress
                        - type
                        - firstName
                        - lastName
                        - postalAddress
                    - type: object
                      properties:
                        rail:
                          type: string
                          enum:
                            - us
                        accountNumber:
                          type: string
                          minLength: 4
                          maxLength: 64
                        routingNumber:
                          type: string
                        accountType:
                          type: string
                          enum:
                            - checking
                            - savings
                        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:
                        - rail
                        - accountNumber
                        - routingNumber
                        - accountType
                        - bankAddress
                        - type
                        - legalName
                        - postalAddress
                - oneOf:
                    - type: object
                      properties:
                        rail:
                          type: string
                          enum:
                            - swift
                        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:
                        - rail
                        - bic
                        - bankAddress
                        - type
                        - firstName
                        - lastName
                        - postalAddress
                    - type: object
                      properties:
                        rail:
                          type: string
                          enum:
                            - swift
                        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:
                        - rail
                        - bic
                        - bankAddress
                        - type
                        - legalName
                        - postalAddress
                - type: object
                  properties:
                    rail:
                      type: string
                      enum:
                        - crypto
                    chain:
                      type: string
                      enum:
                        - ethereum
                        - base
                        - solana
                        - polygon
                        - arbitrum
                        - optimism
                        - avalanche
                        - tron
                        - stellar
                        - bsc
                        - bitcoin
                    address:
                      type: string
                    attestation:
                      type: object
                      properties:
                        custody:
                          type: string
                          enum:
                            - self
                            - third_party
                      required:
                        - custody
                      additionalProperties: false
                    type:
                      type: string
                      enum:
                        - individual
                        - business
                    firstName:
                      type: string
                    lastName:
                      type: string
                    legalName:
                      type: string
                    dateOfBirth:
                      type: string
                    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
                  required:
                    - rail
                    - chain
                    - address
                    - attestation
            rail:
              type: string
              enum:
                - rtp
                - fedwire
                - ach
                - swift
                - fednow
            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
          required:
            - recipient
          description: >-
            AutoPayout payload. Crypto recipients omit
            `rail`/`ach`/`swift`/`instant`/`remittance`; fiat (us|swift)
            recipients require `rail` and may carry the matching per-rail
            context block.
        rate:
          type: object
          properties:
            referenceRate:
              type: string
              description: Market reference rate at quote time
            totalSpreadBps:
              type: string
              description: >-
                Combined spread (FX markup + take rate) in basis points, integer
                as string
            endUserRate:
              type: string
              description: Effective rate the customer is transacting at
          required:
            - referenceRate
            - totalSpreadBps
            - endUserRate
        fees:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - fixed
              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
                    description: Asset code (USDC, USD, etc.)
                  chain:
                    description: Chain when the asset is on-chain; omitted for fiat.
                    type: string
                    enum:
                      - ethereum
                      - base
                      - solana
                      - polygon
                      - arbitrum
                      - optimism
                      - avalanche
                      - tron
                      - stellar
                      - bsc
                      - bitcoin
                  amount:
                    type: string
                    description: Decimal string, asset-precision rounded
                required:
                  - code
                  - amount
                additionalProperties: false
            required:
              - type
              - assetAmount
        totalDebit:
          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
              description: Asset code (USDC, USD, etc.)
            chain:
              description: Chain when the asset is on-chain; omitted for fiat.
              type: string
              enum:
                - ethereum
                - base
                - solana
                - polygon
                - arbitrum
                - optimism
                - avalanche
                - tron
                - stellar
                - bsc
                - bitcoin
            amount:
              type: string
              description: Decimal string, asset-precision rounded
          required:
            - code
            - amount
          additionalProperties: false
        lockExpiresAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp
          example: '2026-01-15T09:30:00.000Z'
        createdAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp
          example: '2026-01-15T09:30:00.000Z'
        autoExecute:
          type: boolean
        executedAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp
          example: '2026-01-15T09:30:00.000Z'
        executionTrigger:
          type: string
          enum:
            - client
            - auto
        cancelledAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp
          example: '2026-01-15T09:30:00.000Z'
        cancellationReason:
          type: string
          enum:
            - expired
            - client_cancelled
        failureCode:
          type: string
          enum:
            - insufficient_funds
            - provider_unavailable
            - provider_rejected
            - internal_error
            - cancelled
        failureMessage:
          type: string
        linkedTransactionIds:
          type: array
          items:
            type: string
            pattern: ^txn_[0-9A-Za-z]{22}$
        depositInstructions:
          minItems: 1
          maxItems: 1
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                description: >-
                  Discriminator for this deposit block: send crypto to an
                  on-chain address.
                enum:
                  - crypto_address
              address:
                type: string
                description: Conduit-managed deposit address for funding this order.
              chain:
                type: string
                enum:
                  - ethereum
                  - base
                  - solana
                  - polygon
                  - arbitrum
                  - optimism
                  - avalanche
                  - tron
                  - stellar
                  - bsc
                  - bitcoin
                description: >-
                  Blockchain network to send the funding deposit on. Sending on
                  any other chain will not fund the order.
              asset:
                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
                description: Asset code to send.
              expiresAt:
                type: string
                format: date-time
                description: >-
                  Funding deadline; the order is cancelled if unfunded by this
                  time.
                example: '2026-01-15T09:30:00.000Z'
            required:
              - type
              - address
              - chain
              - asset
              - expiresAt
          description: >-
            Where to send funds to fund this order. Exactly one `crypto_address`
            block.
        fundedBy:
          description: >-
            Transfers that funded this order, with how much of each it draws.
            Present on the order detail read for an order funded at a Conduit
            funding address; omitted on the list read and on an order that names
            its own source.
          type: array
          items:
            type: object
            properties:
              transactionId:
                type: string
                pattern: ^txn_[0-9A-Za-z]{22}$
              amount:
                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
                    description: Asset code (USDC, USD, etc.)
                  chain:
                    description: Chain when the asset is on-chain; omitted for fiat.
                    type: string
                    enum:
                      - ethereum
                      - base
                      - solana
                      - polygon
                      - arbitrum
                      - optimism
                      - avalanche
                      - tron
                      - stellar
                      - bsc
                      - bitcoin
                  amount:
                    type: string
                    description: Decimal string, asset-precision rounded
                required:
                  - code
                  - amount
                additionalProperties: false
            required:
              - transactionId
              - amount
      required:
        - id
        - customerId
        - status
        - type
        - destination
        - sourceAsset
        - destinationAsset
        - lockSide
        - rate
        - fees
        - totalDebit
        - lockExpiresAt
        - createdAt
        - autoExecute
        - linkedTransactionIds
    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_abc123 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_abc123
        correlationId:
          description: Request correlation ID
          example: req_a1b2c3d4
          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_abc123 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_abc123
        correlationId:
          description: Request correlation ID
          example: req_a1b2c3d4
          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_abc123 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_abc123
        correlationId:
          description: Request correlation ID
          example: req_a1b2c3d4
          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

````