---
updatedAt: 2026-06-02T09:46:28.000Z
agentTools:
  projectIndex: https://docs.iofinnet.com/llms.txt
---

# Create token transfer

Creates a new transfer request for an ERC20/TRC20 token.


This endpoint initiates a transfer of ERC20/TRC20 tokens from the vault to a specified address.
      

# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "io.finnet API",
    "description": "io.finnet API for managing vaults, transactions, and digital assets",
    "version": "1.0.0"
  },
  "paths": {
    "/v1/vaults/{vaultId}/{chainAlias}/transfer/token": {
      "post": {
        "summary": "Create token transfer",
        "tags": [
          "Public Chain"
        ],
        "description": "Creates a new transfer request for an ERC20/TRC20 token.\n\n\nThis endpoint initiates a transfer of ERC20/TRC20 tokens from the vault to a specified address.\n      ",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "receivingAddress": {
                    "description": "Address to receive the transferred tokens",
                    "type": "string"
                  },
                  "contractAddress": {
                    "description": "Contract address of the token",
                    "type": "string"
                  },
                  "amount": {
                    "description": "Amount to transfer in token units",
                    "type": "string"
                  },
                  "memo": {
                    "description": "Freeform memo or description",
                    "nullable": true,
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 150
                  },
                  "expiresAt": {
                    "description": "Optional expiration time for the request",
                    "nullable": true,
                    "type": "string"
                  },
                  "advancedOptions": {
                    "description": "Chain-specific transaction options",
                    "type": "object",
                    "properties": {
                      "evm": {
                        "type": "object",
                        "properties": {
                          "gasLimit": {
                            "description": "The maximum amount of gas units spent on a transaction.",
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 9007199254740991
                          },
                          "maxFeePerGas": {
                            "description": "Set maxFeePerGas in Gwei high enough to cover fluctuations in the Base Fee.",
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true
                          },
                          "maxPriorityFeePerGas": {
                            "description": "Set maxPriorityFeePerGas in Gwei to reward miners/validators sufficiently for quicker processing.",
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true
                          },
                          "nonce": {
                            "description": "The nonce will be assigned during signing. If provided, it will override the nonce of the transaction.",
                            "type": "number",
                            "minimum": 0
                          }
                        }
                      }
                    }
                  }
                },
                "required": [
                  "receivingAddress",
                  "contractAddress",
                  "amount"
                ]
              }
            }
          }
        },
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "in": "path",
            "name": "vaultId",
            "required": true,
            "description": "Unique identifier of the vault"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "ETH",
                "ETH_SEPOLIA",
                "ETH_HOLESKY",
                "IOCHAIN",
                "IOCHAIN_TESTNET",
                "POLYGON",
                "BSC",
                "AVALANCHE",
                "ARBITRUM",
                "FANTOM",
                "BASE",
                "OPTIMISM",
                "TRON"
              ]
            },
            "in": "path",
            "name": "chainAlias",
            "required": true,
            "description": "Chain alias (e.g., ETH, TRON)"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "authorization",
            "required": true,
            "description": "Bearer token for authentication"
          }
        ],
        "responses": {
          "201": {
            "description": "Default Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "description": "Unique identifier of the transfer request",
                      "type": "string"
                    },
                    "status": {
                      "description": "Current status of the transfer (PENDING)",
                      "type": "string"
                    },
                    "amount": {
                      "description": "Transfer amount",
                      "type": "string"
                    },
                    "receivingAddress": {
                      "description": "Address to receive the tokens",
                      "type": "string"
                    },
                    "sendingAddress": {
                      "description": "Address sending the tokens",
                      "type": "string"
                    },
                    "memo": {
                      "description": "Freeform memo or description",
                      "nullable": true,
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 150
                    },
                    "createdAt": {
                      "description": "ISO timestamp when the request was created",
                      "type": "string"
                    },
                    "updatedAt": {
                      "description": "ISO timestamp when the request was last updated",
                      "type": "string"
                    },
                    "expiresAt": {
                      "description": "ISO timestamp when the request expires",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "status",
                    "amount",
                    "receivingAddress",
                    "sendingAddress",
                    "createdAt",
                    "updatedAt",
                    "expiresAt"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "401": {
            "description": "Default Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "description": "Authentication failed - invalid or missing token",
                      "type": "string"
                    }
                  },
                  "required": [
                    "message"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "403": {
            "description": "Default Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "description": "User does not have permission to create transfers",
                      "type": "string"
                    }
                  },
                  "required": [
                    "message"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "404": {
            "description": "Default Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "description": "Vault not found with the specified ID",
                      "type": "string"
                    }
                  },
                  "required": [
                    "message"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "422": {
            "description": "Default Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "description": "Invalid request parameters or insufficient balance",
                      "type": "string"
                    },
                    "error": {
                      "description": "Error message",
                      "type": "string"
                    },
                    "statusCode": {
                      "description": "Status code",
                      "type": "number"
                    },
                    "validationErrors": {
                      "description": "Detailed field-level validation errors",
                      "type": "object",
                      "additionalProperties": {}
                    }
                  },
                  "required": [
                    "message",
                    "error",
                    "statusCode"
                  ],
                  "additionalProperties": false
                }
              }
            }
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://api.iofinnet.com",
      "description": "Production server"
    }
  ],
  "tags": [
    {
      "name": "Public Chain",
      "description": "Operations for managing on-chain transactions, including transfers and token operations"
    }
  ],
  "externalDocs": {
    "url": "https://support.iofinnet.com",
    "description": "Reach out to our support team"
  }
}
```

# Sibling pages

* [List asset transactions](https://docs.iofinnet.com/reference/get_v1-vaults-vaultid-assets-assetid-transactions.md)
* [Create native asset transfer](https://docs.iofinnet.com/reference/post_v1-vaults-vaultid-chainalias-transfer-native.md)