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

# Get multi exchange batch transaction data (Solana)

> Returns batched deposit-transaction data for a Solana multi exchange group.
All orders must share the same source token chain; batches contain up to 10
deposit addresses each. This is read-only (no server-side side effect), so it
is a GET. EVM multiswaps build a stored UserOp instead — use
POST multi/{multiId}/tx/build for those.



## OpenAPI

````yaml https://api-partner.houdiniswap.com/v2/openapi.json get /exchanges/multi/{multiId}/tx
openapi: 3.0.0
info:
  title: houdiniswap-backend
  version: 2.1.2
  description: Houdiniswap Backend
  license:
    name: ISC
  contact: {}
servers:
  - url: https://api-partner.houdiniswap.com/v2
security: []
paths:
  /exchanges/multi/{multiId}/tx:
    get:
      tags:
        - Exchanges
      summary: Get multi exchange batch transaction data (Solana)
      description: >-
        Returns batched deposit-transaction data for a Solana multi exchange
        group.

        All orders must share the same source token chain; batches contain up to
        10

        deposit addresses each. This is read-only (no server-side side effect),
        so it

        is a GET. EVM multiswaps build a stored UserOp instead — use

        POST multi/{multiId}/tx/build for those.
      operationId: GetMultiExchangeTxData
      parameters:
        - description: The multi exchange group ID
          in: path
          name: multiId
          required: true
          schema:
            type: string
            maxLength: 64
        - in: query
          name: sender
          required: true
          schema:
            type: string
        - in: query
          name: houdiniIds
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MultiExchangeTxResult'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - apiKey: []
components:
  schemas:
    MultiExchangeTxResult:
      properties:
        multiId:
          type: string
        chain:
          type: string
          description: Chain kind of the from token (e.g. "solana", "evm")
        transactions:
          items:
            $ref: '#/components/schemas/TxBatch'
          type: array
        depositNeeded:
          type: string
          description: >-
            How much more native ETH (wei) the SA needs before submission; "0"
            means already funded
        saCurrentBalance:
          type: string
          description: Current SA native balance in wei
      required:
        - multiId
        - chain
        - transactions
      type: object
      additionalProperties: false
    ErrorResponse:
      properties:
        message:
          type: string
        code:
          type: string
        requestId:
          type: string
      required:
        - message
        - code
      type: object
      additionalProperties: false
    ValidationError:
      properties:
        message:
          type: string
        code:
          type: string
        requestId:
          type: string
        fields:
          $ref: '#/components/schemas/FieldErrors'
      required:
        - message
        - code
        - fields
      type: object
      additionalProperties: false
    TxBatch:
      properties:
        houdiniIds:
          items:
            type: string
          type: array
          description: HoudiniIds of the orders included in this batch
        txData:
          anyOf:
            - $ref: '#/components/schemas/EvmBatchTxSlimData'
            - $ref: '#/components/schemas/BatchTxData'
          description: Network-specific transaction data ready to broadcast
      required:
        - houdiniIds
        - txData
      type: object
      additionalProperties: false
    FieldErrors:
      properties: {}
      type: object
      additionalProperties:
        properties:
          value: {}
          message:
            type: string
        required:
          - message
        type: object
    EvmBatchTxSlimData:
      description: >-
        Slim response returned to the frontend — backend stores the full userOp
        in DB
      properties:
        userOpHash:
          type: string
        to:
          type: string
        data:
          type: string
        value:
          type: string
        chainId:
          type: number
          format: double
        tokenAmount:
          type: string
      required:
        - userOpHash
        - to
        - data
        - value
        - chainId
        - tokenAmount
      type: object
      additionalProperties: false
    BatchTxData:
      anyOf:
        - $ref: '#/components/schemas/SolanaBatchTxData'
        - $ref: '#/components/schemas/EvmBatchTxData'
      description: Union — add new network types here as they are supported
    SolanaBatchTxData:
      properties:
        data:
          type: string
          description: Serialized transaction bytes (base64)
      required:
        - data
      type: object
      additionalProperties: false
    EvmBatchTxData:
      properties:
        userOp:
          $ref: '#/components/schemas/EvmUserOp'
        userOpHash:
          type: string
        chainId:
          type: number
          format: double
        entryPoint:
          type: string
        to:
          type: string
        smartAccountAddress:
          type: string
        gasEstimate:
          $ref: '#/components/schemas/EvmGasEstimate'
        data:
          type: string
        value:
          type: string
        tokenAmount:
          type: string
      required:
        - userOp
        - userOpHash
        - chainId
        - entryPoint
        - to
        - smartAccountAddress
        - gasEstimate
        - data
        - value
        - tokenAmount
      type: object
      additionalProperties: false
    EvmUserOp:
      description: >-
        EntryPoint v0.7 unpacked UserOp. User pays gas from Smart Account
        balance — no paymaster.
      properties:
        sender:
          type: string
        nonce:
          type: string
        factory:
          type: string
        factoryData:
          type: string
        callData:
          type: string
        callGasLimit:
          type: string
        verificationGasLimit:
          type: string
        preVerificationGas:
          type: string
        maxFeePerGas:
          type: string
        maxPriorityFeePerGas:
          type: string
        signature:
          type: string
        paymaster:
          type: string
        paymasterData:
          type: string
        paymasterVerificationGasLimit:
          type: string
        paymasterPostOpGasLimit:
          type: string
      required:
        - sender
        - nonce
        - callData
        - callGasLimit
        - verificationGasLimit
        - preVerificationGas
        - maxFeePerGas
        - maxPriorityFeePerGas
        - signature
      type: object
      additionalProperties: false
    EvmGasEstimate:
      properties:
        gasCostWei:
          type: string
        gasCostNative:
          type: string
        nativeSymbol:
          type: string
        totalTransferAmountWei:
          type: string
        requiredSmartAccountBalanceWei:
          type: string
      required:
        - gasCostWei
        - gasCostNative
        - nativeSymbol
        - totalTransferAmountWei
        - requiredSmartAccountBalanceWei
      type: object
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      name: Authorization
      in: header

````