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

# Master Wallet Sign Transaction

> Sign a raw unsigned transaction with the master wallet's private key. Supports EVM (JSON string), Tron (JSON string), and Solana (base64 VersionedTransaction).



## OpenAPI

````yaml post /v1/wallets/{id}/signing/transaction
openapi: 3.0.3
info:
  title: Blockradar Documentation
  description: >-
    The OpenAPI specification of the Blockradar API that enables fintechs and
    developers to seamlessly integrate stablecoin deposits and payments into
    their products.
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.blockradar.co
security:
  - apiKey: []
tags:
  - name: Rewards
    description: >-
      Non-custodial yield (Earn) on stablecoins via regulated (Fija) and DeFi
      (Aave) strategies. Deposit, withdraw, preview fees, and read positions and
      earnings at the business, wallet, and sub-address level. Amounts are
      returned net of the platform fee, which applies only to interest earned.
  - name: Wallet
    description: >-
      Wallet Management System


      Comprehensive wallet management API for multi-blockchain operations. This
      system handles wallet creation, configuration, balance monitoring, and
      integration with various blockchain networks.


      Core Functionality:


      - Multi-blockchain wallet creation and management

      - Balance monitoring and asset tracking

      - Auto-settlement rule configuration

      - Gateway wallet integration

      - Address generation and management

      - Transaction monitoring and processing
  - name: Addresses
    description: >-
      Address Management System


      Comprehensive blockchain address management API for operations. This
      system handles address creation, validation, monitoring, and management
      across multiple blockchain networks.


      Core Functionality:


      - Multi-blockchain address generation

      - Address validation and verification

      - Balance monitoring and tracking

      - Transaction history management

      - Address labeling and organization

      - Integration with wallet systems

      - Real-time address monitoring
  - name: Asset
  - name: Transactions
  - name: Withdraw
    description: >-
      The Withdraw feature allows you to programmatically withdraw stablecoins
      from your master wallet with ease
  - name: Withdraw Fiat
  - name: Signing
    description: >-
      Typed data signing service for secure transaction authorization. Supports
      all EIP-712 standards including EIP-3009 (TransferWithAuthorization) and
      EIP-2612 (Permit).
  - name: Swap
    description: >-
      The Swap feature enables users to exchange one stabelcoin asset for
      another across different blockchains. This feature provides a seamless way
      to convert between different stablecoins while maintaining security and
      compliance standards.
  - name: Liquidity Pool
  - name: Virtual Accounts
    description: >-
      Virtual Accounts API provides endpoints for managing virtual bank accounts
      linked to master wallets or child addresses. This API enables businesses
      to:


      - Create virtual accounts for customers to receive payments

      - Retrieve virtual account details

      - Activate/deactivate virtual accounts


      **Virtual Account Types:**


      Virtual accounts support different types with varying behaviors:


      1. **AUTO_FUNDING** (Default):

          - Automatically mints stablecoin when fiat payments are received

          - Transfers the stablecoin to the linked wallet/address immediately

          - Best for real-time payment processing


      **How It Works - Auto-Funding Flow (AUTO_FUNDING type only):**


      When a customer sends fiat currency to a virtual account with type
      AUTO_FUNDING:


      1. **Payment Receipt**: The payment is received in the virtual account

      2. **Automatic Minting**: The system automatically mints the stablecoin
      equivalent

      3. **Blockchain Transfer**: The minted stablecoin is transferred to the
      virtual account's linked wallet or address


      **Note**: The auto-funding flow only applies to virtual accounts with type
      `AUTO_FUNDING`.

      Other types have different processing behaviors.


      ## Prerequisites


      Before creating virtual accounts, ensure:


      - **Compliance requirements must be completed** (see [Compliance
      Requirements](http://localhost:3000/essentials/virtual-accounts#compliance-requirements)
      section below)

      - **Virtual accounts feature must be enabled** for your business (reach
      out to [support@blockradar.co](https://mailto:support@blockradar.co) or
      use live chat on the dashboard to enable the feature after compliance
      approval)

      - **Only available on MAINNET environment** (not available on testnet)

      - **Master Wallet must support stablecoin asset** - Your account plan must
      include stablecoin access (upgrade from Dashboard → Settings →
      Subscription if needed)


      **Supported Currency:**


      - Fiat: NGN (Nigerian Naira)

      - Stablecoin: cNGN - minted automatically on blockchain (for AUTO_FUNDING
      type)
  - name: Auto Settlements
    description: >-
      Creates a new auto settlement rule for a wallet. Auto settlement
      automatically transfers/swap assets based on configured rules when certain
      conditions are met.


      Rules can be configured for:


      - Source blockchain and assets

      - Destination blockchain and asset

      - Amount ranges (min/max)

      - Slippage tolerance

      - Gateway vs non-gateway wallets


      Gateway rules are required for testnet wallets and must have matching
      source/destination assets.
  - name: Smart Contract
    description: >-
      This API provides endpoints for interacting with smart contracts on the
      blockchain. It allows for reading contract data, executing contract
      functions, and estimating network fees.
  - name: Gateway
    description: >-
      The Gateway feature enables you to programmatically deposit USDC into a
      unified, chain-abstracted balance and instantly mint USDC on any supported
      blockchain, streamlining crosschain transfers and eliminating manual
      bridging steps and rebalancing complexities.
  - name: Payment Links
    description: >-
      The Payment Pages API provides a quick and secure way to collect payment
      for servcies.
  - name: Beneficiaries
    description: >-
      This API allows you to create beneficiaries with automatic settlements to
      your external wallets on a periodic basis.


      Example frequencies: INSTANT, DAILY, WEEKLY, MONTHLY, YEARLY
  - name: AML
    description: >-
      The AML (Anti Money Laundering) API provides a quick way for you to check
      if an address is blacklisted or sanctioned
  - name: Asset Recovery
    description: >-
      Enables the recovery (salvage) of both native blockchain assets and tokens
      from a specified sender address to a recipient address. This feature
      supports emergency fund recovery and asset consolidation operations.
  - name: Miscellaneous
    description: >-
      The Miscellaneous API are supporting APIs that can be used to provide more
      details to other APIs.
  - name: Asset1
  - name: Blockchain
  - name: Webhooks
    description: >-
      Webhooks allow you to set up a notification system that can be used to
      receive updates on certain requests made to the Blockradar API.

      To see full list and instructions
      [https://docs.blockradar.co/essentials/webhooks](https://docs.blockradar.co/essentials/webhooks)


      ##
  - name: Deposit
  - name: Withdraw1
  - name: Swap1
  - name: Gateway1
paths:
  /v1/wallets/{id}/signing/transaction:
    post:
      tags:
        - Signing
      summary: Master Wallet Sign Transaction
      description: >-
        Sign a raw unsigned transaction with the master wallet's private key.
        Supports EVM (JSON string), Tron (JSON string), and Solana (base64
        VersionedTransaction).
      operationId: masterWalletSignTransaction
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            example: YOUR_WALLET_ID
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - transaction
              properties:
                transaction:
                  type: string
                  description: >-
                    The serialized unsigned transaction. Base64 for Solana, JSON
                    string for EVM and Tron.
                  example: >-
                    {"to":"0x000000000000000000000000000000000000dEaD","value":"0x5af3107a4000","nonce":4,"chainId":11155111,"gasLimit":"0x5208","maxFeePerGas":"0x59682f00","maxPriorityFeePerGas":"0x3b9aca00","type":2}
                reference:
                  type: string
                  description: Your internal tracking ID.
                  example: eth-transfer-001
                metadata:
                  type: object
                  description: Custom key-value pairs stored with the transaction record.
                  example:
                    source: jupiter
                    pair: SOL/USDC
            examples:
              EVM Transaction:
                value:
                  transaction: >-
                    {"to":"0x000000000000000000000000000000000000dEaD","value":"0x5af3107a4000","nonce":4,"chainId":11155111,"gasLimit":"0x5208","maxFeePerGas":"0x59682f00","maxPriorityFeePerGas":"0x3b9aca00","type":2}
                  reference: eth-transfer-001
              Solana Transaction:
                value:
                  transaction: >-
                    AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
                  reference: jupiter-swap-001
              Tron Transaction:
                value:
                  transaction: >-
                    {"visible":false,"txID":"abc123...","raw_data":{"contract":[...],"ref_block_bytes":"1234","ref_block_hash":"abcdef","expiration":1710800000000,"timestamp":1710799990000},"raw_data_hex":"0a02..."}
                  reference: trx-transfer-001
      responses:
        '200':
          description: Transaction signed successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    example: 200
                  message:
                    type: string
                    example: Transaction signed successfully
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        example: 782942da-48b0-416b-924b-8f657ae637a7
                      reference:
                        type: string
                        example: eth-transfer-001
                      senderAddress:
                        type: string
                        example: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                      recipientAddress:
                        type: string
                        example: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                      hash:
                        type: string
                        example: >-
                          0xac4c73ca084608ac6b981e54db948dc80c15b4ea3ffd0c9f5781f3af7ad6fe51
                      confirmed:
                        type: boolean
                        example: true
                      status:
                        type: string
                        example: SUCCESS
                      type:
                        type: string
                        example: SIGNED
                      createdChannel:
                        type: string
                        example: api
                      reason:
                        type: string
                        example: Transaction signed
                      network:
                        type: string
                        example: testnet
                      chainId:
                        type: number
                        example: 11155111
                      metadata:
                        nullable: true
                        example: null
                      signedTransaction:
                        type: string
                        description: >-
                          The signed transaction. Base64 string for Solana, hex
                          string for EVM, JSON string for Tron.
                        example: >-
                          0x02f87383aa36a763843b9aca008459682f0082520894000000000000000000000000000000000000dead865af3107a400080c080a0b760...
                      amount:
                        nullable: true
                        example: null
                      amountUSD:
                        type: string
                        example: '0.00'
                      fee:
                        nullable: true
                        example: null
                      feeUSD:
                        nullable: true
                        example: null
                      currency:
                        type: string
                        example: USD
                      createdAt:
                        type: string
                        example: '2026-03-19T13:34:24.937Z'
                      updatedAt:
                        type: string
                        example: '2026-03-19T13:34:24.937Z'
                      wallet:
                        type: object
                        properties:
                          id:
                            type: string
                            example: 3f9aca5c-38ee-4e1d-ab67-c084a2e37bb2
                          name:
                            type: string
                            example: Ethereum Wallet
                          address:
                            type: string
                            example: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                          isActive:
                            type: boolean
                            example: true
                          status:
                            type: string
                            example: ACTIVE
                          network:
                            type: string
                            example: testnet
                      asset:
                        nullable: true
                        example: null
                      blockchain:
                        type: object
                        properties:
                          id:
                            type: string
                            example: 85ffc132-3972-4c9e-99a5-5cf0ccb688bf
                          name:
                            type: string
                            example: ethereum
                          symbol:
                            type: string
                            example: eth
                          slug:
                            type: string
                            example: ethereum
                          isEvmCompatible:
                            type: boolean
                            example: true
                          tokenStandard:
                            type: string
                            example: ERC20
                      beneficiary:
                        nullable: true
                        example: null
              examples:
                EVM:
                  value:
                    statusCode: 200
                    message: Transaction signed successfully
                    data:
                      id: 782942da-48b0-416b-924b-8f657ae637a7
                      reference: 52TQawmiqYpNiWD2Ks0P
                      senderAddress: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                      recipientAddress: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                      tokenAddress: null
                      amount: null
                      amountPaid: null
                      amountUSD: '0.00'
                      rateUSD: '0.00'
                      fee: null
                      feeUSD: null
                      feeHash: null
                      currency: USD
                      toCurrency: null
                      blockNumber: null
                      blockHash: null
                      hash: >-
                        0xac4c73ca084608ac6b981e54db948dc80c15b4ea3ffd0c9f5781f3af7ad6fe51
                      confirmations: null
                      confirmed: true
                      gasPrice: null
                      gasUsed: null
                      gasFee: null
                      status: SUCCESS
                      processingStatus: PENDING
                      processingProviderReference: null
                      processingReason: null
                      type: SIGNED
                      createdChannel: api
                      note: null
                      amlScreening: {}
                      isAutoSweep: false
                      assetSwept: null
                      assetSweptAt: null
                      assetSweptGasFee: null
                      assetSweptHash: null
                      assetSweptSenderAddress: null
                      assetSweptRecipientAddress: null
                      assetSweptAmount: null
                      reason: Transaction signed
                      network: testnet
                      chainId: 11155111
                      metadata: null
                      toAmount: null
                      signedTransaction: >-
                        0x02f87383aa36a763843b9aca008459682f0082520894000000000000000000000000000000000000dead865af3107a400080c080a0b7600de5fce50c7dddea4673296e48d440aa4d62148d9645c881494ff55c76e6a044576669a19e0e6cddc14115144ce3e5b6d80c71201ef0e46b28a22aca8d7d2a
                      rate: null
                      createdAt: '2026-03-19T13:34:24.937Z'
                      updatedAt: '2026-03-19T13:34:24.937Z'
                      wallet:
                        id: 3f9aca5c-38ee-4e1d-ab67-c084a2e37bb2
                        name: Ethereum Wallet
                        description: Yooooo
                        address: '0xC887a3Cb8E7AbA4A77D7275AD4B242f71cbd5446'
                        derivationPath: m/44'/60'/0'/0/0
                        isActive: true
                        status: ACTIVE
                        network: testnet
                        configurations: {}
                        createdAt: '2024-05-15T12:09:24.777Z'
                        updatedAt: '2026-03-18T15:30:13.505Z'
                      asset: null
                      blockchain:
                        id: 85ffc132-3972-4c9e-99a5-5cf0ccb688bf
                        name: ethereum
                        symbol: eth
                        slug: ethereum
                        derivationPath: m/44'/60'/0'/0
                        isEvmCompatible: true
                        isL2: false
                        isActive: true
                        tokenStandard: ERC20
                        networkFeeModel: native
                        configurations: null
                        createdAt: '2024-05-14T17:53:33.095Z'
                        updatedAt: '2024-11-26T20:04:13.936Z'
                      beneficiary: null
                Solana:
                  value:
                    statusCode: 200
                    message: Transaction signed successfully
                    data:
                      id: 02f404a5-d13e-4bcf-8ad5-c5f51c04fa49
                      reference: qZmQqDiIp9owMzQJcDbv
                      senderAddress: HKqZUT3wuyJrsPYmrYPcGduDdjXZTggbLrNsF9WHMvbw
                      recipientAddress: HKqZUT3wuyJrsPYmrYPcGduDdjXZTggbLrNsF9WHMvbw
                      tokenAddress: null
                      amount: null
                      amountPaid: null
                      amountUSD: '0.00'
                      rateUSD: '0.00'
                      fee: null
                      feeUSD: null
                      feeHash: null
                      currency: USD
                      toCurrency: null
                      blockNumber: null
                      blockHash: null
                      hash: >-
                        TjphHHAzjhRBn8t1qhhTRWpUxvkATBnzeRBB8fonWkYpR1gDh4t99rmgah3hrwoCbD3L9Ex1a7SYjjX2TePio3s
                      confirmations: null
                      confirmed: true
                      gasPrice: null
                      gasUsed: null
                      gasFee: null
                      status: SUCCESS
                      processingStatus: PENDING
                      processingProviderReference: null
                      processingReason: null
                      type: SIGNED
                      createdChannel: api
                      note: null
                      amlScreening: {}
                      isAutoSweep: false
                      assetSwept: null
                      assetSweptAt: null
                      assetSweptGasFee: null
                      assetSweptHash: null
                      assetSweptSenderAddress: null
                      assetSweptRecipientAddress: null
                      assetSweptAmount: null
                      reason: Transaction signed
                      network: testnet
                      chainId: 103
                      metadata: null
                      toAmount: null
                      signedTransaction: >-
                        ARcO4DT2IYg/wemCZy4iYXVRzlGruYHUTGqIcbWI/uWeWet6MNZKVVvUF4yT5GQjRqrb1QD1TaAoflyXXatxzAaAAQABA/KOWisiJzXz+XfkR7hmKrGs4oq5OUy5wxuBKySr+MSeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH2glfU7S1Cog0JFqZHmrMC3mPnqjPwkG8n0W+6vdA7AQICAAEMAgAAAGQAAAAAAAAAAA==
                      rate: null
                      createdAt: '2026-03-19T13:38:45.326Z'
                      updatedAt: '2026-03-19T13:38:45.326Z'
                      wallet:
                        id: c72a6f21-6ab5-48ad-9f99-fd90a2d6d311
                        name: Solana Testnet Wallet
                        description: This is solana testnet wallet
                        address: HKqZUT3wuyJrsPYmrYPcGduDdjXZTggbLrNsF9WHMvbw
                        derivationPath: m/44'/501'/0'/1'
                        isActive: true
                        status: ACTIVE
                        network: testnet
                        configurations: null
                        createdAt: '2024-11-08T17:09:19.372Z'
                        updatedAt: '2024-11-08T17:09:19.372Z'
                      asset: null
                      blockchain:
                        id: 196badf5-380f-4480-ab4a-d0e4304e91f0
                        name: solana
                        symbol: sol
                        slug: solana
                        derivationPath: m/44'/501'/0'
                        isEvmCompatible: false
                        isL2: false
                        isActive: true
                        tokenStandard: null
                        networkFeeModel: native
                        configurations: null
                        createdAt: '2024-10-22T16:57:33.465Z'
                        updatedAt: '2024-11-26T20:04:13.951Z'
                      beneficiary: null
                Tron:
                  value:
                    statusCode: 200
                    message: Transaction signed successfully
                    data:
                      id: af44218f-d38b-472b-9834-49f461a20fd4
                      reference: J6RugzxXI6cdpeMXrhh
                      senderAddress: TMUZSkS3aF1pZxnTokWikUQH7SYt3bNb6G
                      recipientAddress: TMUZSkS3aF1pZxnTokWikUQH7SYt3bNb6G
                      tokenAddress: null
                      amount: null
                      amountPaid: null
                      amountUSD: '0.00'
                      rateUSD: '0.00'
                      fee: null
                      feeUSD: null
                      feeHash: null
                      currency: USD
                      toCurrency: null
                      blockNumber: null
                      blockHash: null
                      hash: >-
                        3180f971f692a78f62050278149d746abd946fbd1797a414f5ad0d5ed45c902b
                      confirmations: null
                      confirmed: true
                      gasPrice: null
                      gasUsed: null
                      gasFee: null
                      status: SUCCESS
                      processingStatus: PENDING
                      processingProviderReference: null
                      processingReason: null
                      type: SIGNED
                      createdChannel: api
                      note: null
                      amlScreening: {}
                      isAutoSweep: false
                      assetSwept: null
                      assetSweptAt: null
                      assetSweptGasFee: null
                      assetSweptHash: null
                      assetSweptSenderAddress: null
                      assetSweptRecipientAddress: null
                      assetSweptAmount: null
                      reason: Transaction signed
                      network: testnet
                      chainId: 3448148188
                      metadata: null
                      toAmount: null
                      signedTransaction: >-
                        {"visible":false,"txID":"3180f971f692a78f62050278149d746abd946fbd1797a414f5ad0d5ed45c902b","raw_data_hex":"0a02513f220808c7d5da0ddd12fb40e8a9cbb2d0335a67080112630a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412320a15417e3682ec8f5b98a77467149815b72245f78586fc1215418840e6c55b9ada326d211d818c34a994aeced80818c0843d7088d5c7b2d033","raw_data":{"contract":[{"parameter":{"value":{"to_address":"418840e6c55b9ada326d211d818c34a994aeced808","owner_address":"417e3682ec8f5b98a77467149815b72245f78586fc","amount":1000000},"type_url":"type.googleapis.com/protocol.TransferContract"},"type":"TransferContract"}],"ref_block_bytes":"513f","ref_block_hash":"08c7d5da0ddd12fb","expiration":1773927585000,"timestamp":1773927525000},"signature":["d5adac23f23414083ef4f93b995a4a18f11a480c4e0e0cb72050dbb5615487bf1695161eb202771af6793095d8a1a9600c770cc58e1f7b2d975e223b3e1094351B"]}
                      rate: null
                      createdAt: '2026-03-19T13:38:47.096Z'
                      updatedAt: '2026-03-19T13:38:47.096Z'
                      wallet:
                        id: c4bbebea-6cec-4021-b842-ffead75fd0f1
                        name: Tron Wallet
                        description: This is tron testnet wallet
                        address: TMUZSkS3aF1pZxnTokWikUQH7SYt3bNb6G
                        derivationPath: m/44'/195'/0'/0/2
                        isActive: true
                        status: ACTIVE
                        network: testnet
                        configurations: null
                        createdAt: '2024-05-15T12:12:06.305Z'
                        updatedAt: '2024-05-15T12:12:06.305Z'
                      asset: null
                      blockchain:
                        id: fa91a922-3838-45f6-8a88-a4c771e1443a
                        name: tron
                        symbol: trx
                        slug: tron
                        derivationPath: m/44'/195'/0'/0
                        isEvmCompatible: false
                        isL2: false
                        isActive: true
                        tokenStandard: TRC20
                        networkFeeModel: native
                        configurations: null
                        createdAt: '2024-05-14T17:53:33.110Z'
                        updatedAt: '2024-11-26T20:04:13.943Z'
                      beneficiary: null
        '400':
          description: Invalid transaction format
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    example: 400
                  message:
                    type: string
                    example: 'Invalid transaction format: expected a JSON string'
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-api-key
      in: header

````