Skip to content
FornaxA edited this page Aug 19, 2019 · 2 revisions

What is multisend?

MultiSend allows a user to automatically send a percent of their stake reward to as many addresses as you would like The MultiSend transaction is sent when the staked coins mature (100 confirmations)


How to create or add multisend vector?

multisend This will add a new address to the MultiSend vector Percent is a whole number 1 to 100.

NOTE: In GUI you can't use address which has its private key in your wallet..


MULTISEND COMMANDS (usage: multisend )

  • print - displays the current MultiSend vector
  • clear - deletes the current MultiSend vector
  • enablestake/activatestake - activates the current MultiSend vector to be activated on stake rewards
  • enablemasternode/activatemasternode - activates the current MultiSend vector to be activated on masternode rewards
  • disable/deactivate - disables the current MultiSend vector
  • delete <Address #> - deletes an address from the MultiSend vector
  • disable
    - prevents a specific address from sending MultiSend transactions
  • enableall - enables all addresses to be eligible to send MultiSend transactions

How to check if multisend is active?

If you had some previous setups, you can check if you have already any existing and get their activity state: multisend print. If you have never used it, your output will look like this:

tor@tor ~ $ ion-cli multisend print
[
  {
    "MultiSendStake Activated?": false,
    "MultiSendMasternode Activated?": false
  },
  "MultiSend Addresses to Send To:",
  {
  }
]

Example 1 - Single masternode holder wants to automate his payouts from his server

Victoria is successful student and in her freshman year she got financial bonus from her parents for being excellent student. Victoria could not find time how to spend and she decided to invest her bonus instead of letting it on her bank account. With some part she bought 25000 Ion and she activated one masternode. She had 5000 which could stake too and she was forced to use separate wallet for this. Victoria did complain that it does consume to much of her time to manage payouts and everything else around. With Ion's v3.0 release Victoria is very happy, because now she can manage autopayouts for both, masternode and her staking wallet.

  1. Victoria creates multisend vector to send 100% to her wallet

    multisend iYAJs79iRVaqggCcF5DZbUvdmqd8iC5e9h 99
    

    This is her output:

    victoria@victoria ~ $ ion-cli multisend iYAJs79iRVaqggCcF5DZbUvdmqd8iC5e9h 99
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": false
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "iYAJs79iRVaqggCcF5DZbUvdmqd8iC5e9h",
        "Percent": 99
      }
    ]
    
  2. Victoria activates her new MultiSend vector on masternode rewards

    Activate with command multisend enablemasternode, in your output you can find the line which says if it is active:

    "MultiSendMasternode Activated?": true

    The output of our example looks like this:

    victoria@victoria  ~ $ ion-cli multisend enablemasternode
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": true
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "iYAJs79iRVaqggCcF5DZbUvdmqd8iC5e9h",
        "Percent": 99
      }
    ]
    
  3. Activate created MultiSend vectors on stake rewards

    To activate, run multisend enablestake. You should see then

    "MultiSendStake Activated?": true,

    The output of our example looks like this:

    victoria@victoria  ~ $ ion-cli multisend enablestake
    [
      {
        "MultiSendStake Activated?": true,
        "MultiSendMasternode Activated?": true
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "iYAJs79iRVaqggCcF5DZbUvdmqd8iC5e9h",
        "Percent": 99
      }
    ]
    

Example 2 - Three friends run 1 masternode

In this example we will assume that 3 friends own and run one masternode. Lets call them Ana, John and Skipper

There investments are different

  • Ana has 12864 Ion
  • John has 2563 Ion
  • Skipper has 4573 Ion

According to the amount of coins, this is percentage overview:

  • Ana: 12864÷20000=0.6432 which is 64,32 percent.

  • John: 2563÷20000=0,12815 which is 12,815

  • Skipper: 4573÷20000=0.22865 which is 22,865 percent.

    Check: 0,22865+0,6432+0,12815=1

We can use only full numbers which would mean that we need to round down (up would be over 100% thats why here rounding down is required):

  • Ana: 64,32 => 64
  • John: 12,815 => 12
  • Skipper: 22,865 = 22

If we check now, 64+12+22=98 which means that in this calculation, it means that in current case it is discrepancy of 2%. As they can use actually only 99%, it means that only 1% will be left over. Ana influenced it as main holder having highest risk, she receives this 1% percent and everybody did agree on that.

  1. Create multisend vector for three addresses of Ana, John and Skipper

    Ana, John and Skipper share rewards according to the owned amount of coins. Create vector for Ana:

    multisend ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd 65
    

    For John:

    multisend ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6 12
    

    For Skipper:

    multisend icyvwj5u74jn2seDBGPeDr4RLZHDy7N2Yr 22
    

    this is the result: "Address 0": "ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd", "Percent": 65, "Address 1": "ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6", "Percent": 12, "Address 2": "icyvwj5u74jn2seDBGPeDr4RLZHDy7N2Yr", "Percent": 22

    Full output looks like this:

    tor@tor ~ $ ion-cli multisend ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd 65
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": false
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd",
        "Percent": 65
      }
    ]
    tor@tor ~ $ ion-cli multisend ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6 12
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": false
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd",
        "Percent": 65,
        "Address 1": "ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6",
        "Percent": 12
      }
    ]
    tor@tor ~ $ ion-cli multisend icyvwj5u74jn2seDBGPeDr4RLZHDy7N2Yr 22
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": false
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd",
        "Percent": 65,
        "Address 1": "ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6",
        "Percent": 12,
        "Address 2": "icyvwj5u74jn2seDBGPeDr4RLZHDy7N2Yr",
        "Percent": 22
      }
    ]
    
    
  2. Activate the current MultiSend vector on masternode rewards

    If you had some previous setups, you can check if you have already any existing and get their activity state: multisend print. If you have never used it, your output will look like this:

    tor@tor ~ $ ion-cli multisend print
    [
      {
        "MultiSendStake Activated?": false,
        "MultiSendMasternode Activated?": false
      },
      "MultiSend Addresses to Send To:",
      {
      }
    ]
    
    

    Activate with command multisend enablemasternode, in your output you can find the line which says if it is active:

    "MultiSendMasternode Activated?": true

    Ana, John and Skipper finished setting up their masternode. But then Skipper asks what will happen if they send later they decide that they will payout manually and if payouts stake, how could they then split that efficiently without big time efforts for calculations? John replied that this would not be a problem, because they can activate in next step, the same vector for stake rewards too and they will be split same way as the masternode is.

  3. Activate created MultiSend vectors on stake rewards

    To activate, run multisend enablestake. You should see then

    "MultiSendStake Activated?": true,

    The output of our example looks like this:

    tor@tor ~ $ ion-cli multisend enablestake
    [
      {
        "MultiSendStake Activated?": true,
        "MultiSendMasternode Activated?": true
      },
      "MultiSend Addresses to Send To:",
      {
        "Address 0": "ia7BfzyCYs742QMGygLwY93wMVqrHrK7yd",
        "Percent": 65,
        "Address 1": "ioD86xoaKNwm1rjqTY92KkEvy6SbAWN4j6",
        "Percent": 12,
        "Address 2": "icyvwj5u74jn2seDBGPeDr4RLZHDy7N2Yr",
        "Percent": 22
      }
    ]
    

How to delete/clear all existing addresses/vectors?

tor@tor ~ $ ion-cli multisend clear
{
  "Erased from database": true,
  "Erased from RAM": true
}

ION coin Qt and Daemon Info

Builds

HOW TO: Compile iond Daemon from source

HOW TO: Compile the ION QT wallet on Ubuntu

Snapcraft installs

Install ION client in a snap

Upgrade

HOW TO: Upgrade to ION 5.0

ION Masternodes

ION Masternode FAQ

HOW TO: ION 5.0 Masternode Quickstart Guide

HOW TO: Setup ION 5.0 remote Masternode with Ubuntu remote and local QT wallet(DASH-Rebase)

ION coincore QT wallet ELECTRON MINING

Mining ION coin ELECTRON tokens with Proof of Work

ionomy Sharenodes

ionomy Zendesk hosted Sharenodes and dedicated Masternodes FAQ

ION Chain Token System

Atomic Token Protocol (ATP) Overview

ION Token system Basic Operations

UseCases tokens Create-New-Token

UseCases tokens Send-tokens

UseCases tokens Token-balance

UseCases tokens View-token-information

Testing ION tokens on regtest

UseCases regtest Start-regtest

UseCases regtest Access Token Management Key

ION Token group management

UseCases tokens Key-rotation-with-token-authorities

Create and distribute the XDM token according to the IEO

UseCases tokens Create-Management-Tokens

UseCases tokens Drop-token-mint-capability

UseCases tokens Find-token-authorities

General FAQ

How to backup my wallet and its data

How to: backup ION coin blockchain database

HOW TO: Export Private Keys from ION QT

HOW TO: Import private key to ION 3.0 Wallet

How to generate an onion privacy address

Multisend

User-Documentation

Accounts-Explained

ION-coin-Data-Directory

Raw-Transactions

Running-ION

Gitian

Gitian Building

Gitian-building-create-VM-Debian

Gitian-building-create-Debian-VMware

Gitian-building-create-VM-Fedora

Gitian-building-setup-Gitian-Debian

Gitian-building-setup-Gitian-Debian-Google-Console

Gitian-building-setup-Gitian-Debian-Google-Console-Create-instance-template

Gitian-building-setup-Gitian-Debian-Google-Console-Create-VM-from-template

Gitian-building-setup-Gitian-Fedora

Zerocoin

HOW TO: Convert Zerocoin xION to ION

How to: Backup and restore xION Zerocoin private seed

Developer-Documentation

API-Calls-List

API-Reference-JSON-RPC

Weekly Play to Win ION coin mobile gaming tournaments

How do I get involved

ionomy extra info

XDM DarkMatter IEO

ionomy Support Help Centre

ionomy web links and info

ION coin Technical Whitepaper

ion coin Bounty Procedures

ionomy Bounty Information

ionomy ION current events

Clone this wiki locally