Vault Management and Transactions

In this section of the user guide we will walk you through all aspects of creating a vault, resharing a vault, and transacting within the io.vault product. As a Client, there are several key activities to take into consideration;

  1. Creating a new vault
  2. Adding/Removing an asset or network to a vault
  3. Approving/Rejecting a transaction request
  4. Signing a request or a transaction 
  5. Resharing a vault
  6. Depositing into a vault
  7. Transfer from a vault
  8. Activity Report
  9. Gas Fee Customization
  10. API Integration
  11. Virtual Signer
  12. WalletConnect
  13. Transaction Simulation

4.1 Creating a new vault 

Process Ref

Process Step 

1

On the web dashboard, navigate to the "Vaults" section on the left-hand side, then select "+New Vault" located in the top right-hand corner

2

Specify a unique name for the vault and click “Next”
Please Note - Once created the name cannot be changed

3

Specify the vault threshold

  • The amount of signing power required to complete a transaction or reshare request.

Please Note - Threshold can be updated after creation, via a reshare

4

Select the users who will be a member of the vault signing party, and specify the signing power to be allocated to each user's signing device..

  • Signing power will determine the number of secret shares a user controls with their specified signer.

Please note - If you wish to participate in the signing process, ensure that you are added as a signer.

Please note - The user list will only show individuals who have  registered a signer.

5

After selecting the signer(s), click on "review" to examine the details of the vault creation and the signing power allocated for this specific vault

6

Click “Submit for Approval” to send the vault creation request

If you need to amend / update the details, click “edit”

7

Once submitted, you can return to the dashboard by clicking on "dashboard" or track the progress of the vault creation by clicking on "track progress"

8

Each user specified as a member of the vault signing party must approve the request on their device and participate in the vault creation process

  • A reshare request must be approved and completed within 10 minutes, after which the request will expire.

9

After successful completion, the vault will be viewable in the dashboard.

Please Note: You can review the vaults details, including the threshold and signing party, by selecting your desired vault from the dashboard

Please Note: A request must be approved and completed within the 10 minutes time-out limit

Please Note: All signing party users required to approve the request must be online and logged in with their registered devices simultaneously to complete the request

4.2 Adding / Removing an asset or network to a vault

When a new vault is created, only Bitcoin and Ethereum are included by default. However, io.vault also supports all ERC-20 assets as well as other networks. io.vault will automatically detect the deposit of any new ERC-20 token to a vault and display it on the dashboard. Additionally, assets can be manually added or hidden from the vault dashboard using the following process:

Process Ref.  Process Step to Add an asset (Option 1)
1 On the web dashboard, go to the "Vaults" section located on the left-hand side. Then, choose the specific vault for which you wish to add or deactivate an asset by clicking on it.
2

On the Assets page, click on the "+ Manage assets" button to show or hide assets from your vault as needed

3

To Show an Asset: 

  1. Use the search bar to locate a specific asset by:
    • Entering the name of the asset or
    • Providing the contract address of the asset
  2. Once found, select the asset to show it in your vault

The asset will be displayed in the visible list within your vault.

Process Ref.  Process Step to Add an asset (Option 2)
4

On the web dashboard, go to the "Vaults" section located on the left-hand side

5

In the “Recent Activity” section, located on the right-hand side, click on the relevant incoming transfer to view its details

6

On the transfer details page, you'll see an “+Add to [Vault Name]” button. Click this button to add the received asset to your vault's asset list

Process Ref.  Process Step to Hide an asset 
4

On the Assets page, locate the asset you wish to hide and Click on the “Hide” button located next the specific asset

The asset will be removed from the visible list in your vault but can be re-added later using the "Manage Assets" feature.

Please Note: Ensure that you have added the correct asset before using it. Many random coins with similar names might be selected by mistake. Double-check to avoid any errors

 

4.3 Approving / Rejecting a transaction request

Upon submission of a transaction request all members of the vault signing party will receive the request notification on their signing device to review. After reviewing the request details, a user may either decide to approve or reject the transaction. 

Please Note - Any user with login credentials in the organisation can create a transaction request for any vault within the organisation,  so it is important to review the information carefully each time before approving a request.

To approve a transaction

Process Ref.

Process Step

1

Open the app on your registered signer

2

Select the pending transaction request you want to review

3

Review transaction details

4

Using the sliding bar, slide across the screen to approve the transaction

5

Successfully authenticate via FaceID

Please Note: The vault threshold must be reached by any combination of users with devices that have sufficient signing power to approve the transaction

To reject a transaction

Process Ref.

Process Step

1

Open the app on your registered device

2

Select the pending transaction you want to review

3

Review transaction details

4

Select “reject request”

Please Note: If other members of the signing party are still able to reach the vault threshold, they may still complete the transaction.

4.4 Signing a request or a transaction

When signing any request or transaction, please ensure the following details are taken into consideration;

Please Note

A request must be approved and completed within the 10 minutes expiration limit

To complete any request, whether it's for a new vault, vault reshare, or transaction, the required vault threshold of approvals must be met. All members who approve the request must be online and logged in with their registered devices simultaneously in order to sign the request.

If a transaction has reached the required threshold of approvals, the signing process will begin automatically between the signers that approved the request. 

Each device must stay online and unlocked for the entire duration of the signing process (generally no longer than 10 seconds), or the process will fail and a new request will need to be created.

Live Signing

Please Note

If a transaction has reached the required threshold of approvals, the signing process will begin automatically between the signers that approved the request.

During Live Signing, each device must stay online and unlocked for the entire duration of the signing process (generally no longer than 10 seconds). If the device is locked or offline, the process will fail, requiring a new request to be created.

Recommended feature: Background Signing

To avoid the limitations of Live Signing, you can enable Background Signing, which allows the signing process to continue even if your device is locked or running other applications. This feature ensures a smoother, more convenient signing experience without needing to actively keep your device unlocked or the application in the foreground.

To enable Background Signing users must activate location services:

Process Ref.

Process Step

1

When registering a signing device for the first time, you will be prompted to enable Background Signing (location access) on your device. 


You can choose to enable it by clicking "Enable" or decline by selecting "Not now" in the top-right corner of your screen.

2

Next, you will be asked to grant location access to "io.finnet." You can choose from the following options:

  • Allow Once
  • Allow While Using the App
  • Don’t Allow

Please note: If you select "Don’t Allow," the Background Signing feature will not be activated. If you still have the background signing turned on within the app settings (top right button), you will receive a notification to either turn this off or allow background signing in your device settings.

3

Once completed, you can verify that the "Background Signing" option is enabled by going to the io.finnet app within your phone settings.

4

After completing these steps, go to your device settings and check the location access for the io.finnet app. Ensure that location access is set to at least “While Using the App” (minimum) or “Always” (recommended) for the best performance.


Please note: if you choose “ask next time or when I share”, you will be prompted next time you load the io.finnet app to choose the location access again.

Please Note: If you force quit the io.vault app prior or during the signing of a request, the process will be interrupted, causing the transaction to fail. You will need to initiate a new request and approve it again to complete the transaction.

4.5 Resharing a vault

The reshare process enables you to modify specific vault thresholds, signing power allocation, or signing parties. Any modifications to these parameters require meeting the current approval threshold and participation by all signers of the resulting signing party.

A reshare request can be processed by following;

Process Ref.

Process Step

1

On the web dashboard, navigate to the "Vaults" section on the left-hand side, then select the relevant vault you want to edit 

2

Click on the “gear icon” within the top-right (next to “new transfer” button)

3

Select “edit Threshold & Signers”

4

The following actions are then possible:


  • Editing the vault threshold
  • Adding a new user to a signing party;
  • Removing a user from a signing party;
  • Changing an existing user’s signing power;

5

Select “request reshare” in the bottom right

  • all signing party members (existing or proposed) will be prompted to approve this reshare via their signing devices

6

Continue through the "Approving / Rejecting a transaction request" process as detailed in point 5.2

7

Once approved, amendment will be updated within the vault setting

Please Note: Members of the existing signing party must meet the existing vault threshold to approve a reshare request

Please Note: Completing a reshare request requires all members of the resulting signing party to approve and participate in the reshare signing process

 

4.6 Depositing into a Vault

The only requirement to deposit into an existing vault is to obtain the appropriate deposit address for the desired asset. You can find the deposit address by selecting the intended vault in the web dashboard, and the complete address can be copied directly from next to the desired asset.

Note - only the initial and trailing 5 characters of the deposit address are displayed for easier identification but the copy button will copy the entire address to your device clipboard. 

With the QR code feature, you can deposit assets from an external wallet into your io.vault. Follow the steps below to use this feature:

Process Ref.  Process Step
1

On the web dashboard, navigate to the "Vaults" section on the left-hand side, then select the relevant vault  where you want to deposit assets

2

Choose the asset you wish to deposit from the list of available options

3

Once you have selected the asset, locate the QR code icon next to the Send button and click on it. A small pop-up will appear, displaying the QR code for scanning. 

Additionally, the full deposit address will be provided, allowing you to copy and paste it as an alternative option.

4

Alternatively, you can click on the asset line to open the asset's details page. This sub-page displays your balance and a list of transactions. Additionally, on the top right corner, next to the Send button, you will also find the QR code icon for accessing the deposit QR code and address.

5

Scan the QR code displayed in your io.vault using the wallet's camera or QR code scanning feature

Please note: A unique QR code is generated, which is directly linked to a specific deposit address for the selected asset. This ensures secure and accurate deposits into your vault

 

4.7 Transfer from a vault

You have three options for initiating a transfer: through the Transfer page (Option 1 – the quickest method), the Vault page (Option 2), or the Address Book page (Option 3 – a secure option to ensure assets reach the correct beneficiary).


Process Ref.

Process Step 

1 a

    Option 1

    • Go to the "Transfer" section located on the left-hand side

    1b

    Option 2

    • Go to the “Vaults” section located on the left-hand side
    • Select the vault from which you are creating the request
    • Click the “send” button located either in the top right corner or next to your Assets

    1c

    Option 3

    • Go to the “Address Book” section located on the left-hand side
    • Select the desired beneficiary from your contacts list
    • Choose the specific address to send assets to

    2

    On the "Create Transfer”" page, complete the following fields:

    • Select the Asset using the dropdown menu
    • Option 1: Enter or copy/paste the destination network address
    • Option 2: type the name of the recipient previously saved in your Address Book (for more information, please refer to Section 3.5)

    Please note: To select your recipient, they must be on the same network as your chosen assets.

    • Add the Asset quantity to send.

    Please note: You can view your balance by clicking on the Asset icon box

    • Network Fees: follow the steps detailed in Section 4.8
    • Add a transaction memo, if desired (this memo is internal to your organization only)

    3

    At the bottom, click the “review” button to proceed with transferring the Asset, or “Cancel” to stop the transfer

    4

    Now you can review the request, and if you wish to proceed with the transfer, click "Submit Request." 

    At this stage, you can still go back to the previous page to edit or cancel the transfer.

    5

    Once submitted, you can return to the dashboard by clicking on "dashboard" or track the progress of vault creation by clicking on "track Progress"

    6

    Each user specified as a member of the vault signing party must approve the request on their device and participate in the signature process

    A transfer request must be completed, signed, and approved within 10 minutes, or it will expire.

    Tip: Before starting the steps to withdraw, copy the address you would like to send to. This will allow you to easily paste the address into the field.

    4.8 Activity Report

    Users can export their activity and transactions in CSV format via email, which will be sent to their registered email address. The report includes all transactions logged for [Name of the Vault] since its creation, excluding operations such as vault creation and reshares. This comprehensive report provides a clear and detailed record of all financial activity, making it easier to track, reconcile, and maintain accurate documentation for audits or financial analysis.

    Process Ref. Process Step
    1

    On the web dashboard, navigate to the “Vaults” section on the left-hand side, then select the specific vault for which you want to export the activity report

    2

    In the “Recent Activity” section on the right-hand side, click on “View All” to open the complete list of activities and transactions

    3

    From this detailed activity view, locate the “Export” option to generate and send a CSV report to your registered email address.

    Please Note: This report includes all transactions for the selected vault

     

    4.9 Gas Fee Customization

    Users have the flexibility to adjust their transaction fees based on their needs and preferences when using the io.vault platform. Specifically:

    • Low, Medium, High Options: Users can choose preset options for transaction fees, categorized as low, medium, or high. These presets offer a quick way to adjust fees based on typical transaction speeds and costs.
    • Custom Fees: Users can set their own transaction fees by manually adjusting the base fees and priority fees for Ethereum Virtual Machine (EVM) compatible blockchains, or by changing the sats (satoshis) per byte for Bitcoin transactions. This allows for more precise control over the cost and speed of their transactions.

    Note: Remember that gas you pay is not charged or collected by io.finnet, and not something we can control.

    To customize your gas fee, follow the process steps below;

    Process Ref.

    Process Step 

    To create your transaction, follow the steps detailed in Section 5.7 

    2

    Under network fees, you can set your gas fee using one of the following options:

    • Low
    • Medium
    • High - (default setting)
    • Custom

    Note 1: Gas fees are usually set to High by default.

    Note 2: Transactions with higher gas fees are typically processed faster.

    3

    Clicking on one of the four options allows you to choose your gas fee preference. These options determine the amount of gas you’re willing to pay and have the following implications:

    • Low: Lower cost but may result in slower transaction times, especially during high network traffic.
    • Medium: Balanced option, offering moderate cost and processing speed.
    • High: Higher cost (the default setting) but ensures faster transaction processing, ideal for urgent transactions.
    • Custom: Allows you to manually set the gas price and gas limit according to your specific needs and preferences.

    4

    Once comfortable with your gas fee choice, you can review the request, and if you wish to proceed with the transfer, click "Submit Request". 

    Please Note: Clicking “Custom” or “Advanced” will allow you to directly customize gas parameters and choose your sats per byte.

    Note: A link to mempool.space is available for you to visualize the Bitcoin mempool. This tool helps you understand network congestion and optimize your transaction fees for faster processing.

    4.10 API Integration

    The vault API enables programmatic access and usage of the product.  

    To generate API keys, an admin of your organization must access the “settings” page and select “API keys”.  After clicking “create new API key”, specify a name and any IP addresses to be whitelisted (if desired) and click “create”.  Upon creation, be sure to copy both the API secret and public key as they will not be available again after initial generation.  

    To create a new API integration, you will need to follow the API documentation located here. You will find all relevant API development coding required in this location. 

    4.11 Virtual Signer

    The Virtual Signer is a [Multi-Party Computation (MPC)] application that enables secure server side signing of transactions for your vaults with custom approval & rejection logic.

    For more information on pricing and integration, please submit a request to our customer support team here, or through the support tab on the left-hand side of the dashboard.

    4.12 WalletConnect

    WalletConnect (WC) is an open protocol that allows users to connect their digital asset wallets to DApps on various blockchains without exposing their private keys, facilitating a more secure and user-friendly interaction with decentralized applications.

    How to use io.Vault with WalletConnect

    Process Ref

    Process Step

    1

    Open Any Web3 interface. Example Uniswap or Sushiswap

    2

    Click “Connect” button and choose “WalletConnect”

    3

    Click “Copy to clipboard” under the QR code

    4

    Open the io.Vault Dashboard

    5

    You have two options to connect your vault to any dApp:

    • In the left menu under "dApps" click on the "Connect" option under WalletConnect
    • Click on the "WalletConnect" button located at the top right corner of the dashboard

    6

    Past QR code from the Web3 interface in the QR code field

    7

    Click “Connect Vault”

    8

    Go back to the Web3 interface select the token to swap and enter the amount

    9

    Confirm the Swap

    10

    Go back to io.Vault dashboard

    11

    On the Signature request, review the request and click  “Submit for Approval”

    12

    Next open the io.dashboard mobile App to approve 

    13

    Sign the transaction

    14

    Go back to io.Vault dashboard and confirm the transaction status 

    Please note: You will be unable to connect WalletConnect until a Vault has been created. 
    Please note: There are some known issues specific to the dAapp Aave. These issues, although rare, can disrupt the user experience. Please see here for more information. For io.vault known issues see here

     

    4.13 Transaction Simulation & Validation

    Transaction Simulation allows users to review transaction outcomes before they’re approved or submitted to the blockchain. This reduces the risk of signing without full visibility and ensures transparency for all users in the transaction approval process. Using BlockAid’s Simulation API, it mirrors the blockchain’s current state for accurate, reliable results. Additionally, the system automatically scans for suspicious dApps and addresses, providing risk alerts to users during the approval process.

    How does it work?

    By integrating BlockAid into io.vault, we provide the enhanced security needed to operate confidently on the blockchain. With real-time insights into transaction details—including amounts, gas fee estimations, and potential smart contract errors when interacting with defi applications — users can better understand their operations. If a suspicious transaction or address is detected, a clear warning message will be displayed on the dashboard before submission.

    For an added layer of protection, when the transaction is submitted for approval to the relevant Vault’s Signing Party all devices will be able to view the simulation results (and any risk related warnings), allowing users to approve or reject the transaction with direct transparency of the expected result.

    Currently, the transaction simulation feature does not support the following chains:

    • Tron
    • Fantom
    • Bitcoin
    • Bitcoin Testnet