In a smart contract, you could do this by emplacing multiple actions into a single transaction, as follows: transaction transfer; transfer.actions.emplace_back(eosio::permission_level {_self, N(active) }, N(eosio.token), N(transfer), std::make_tuple(from_account, to_account_1, quantity_to_send, std::string("memo"))); transfer.actions.emplace_back(eosio::permission_level {_self, N(active) }, N(eosio.token), N(transfer), std::make_tuple(from_account, to_account_2, quantity_to_send, std::string("memo"))); transfer.actions.emplace_back(eosio::permission_level {_self, N(active) }, N(eosio.token), N(transfer), std::make_tuple(from_account, to_account_3, quantity_to_send, std::string("memo"))); transfer.send(0, _self, false); You can do it with `cleos` by creating the json for each transfer, as follows: cleos transfer from_account, to_account quantity memo -d -j -s This creates json output do this for all the transfers you want to do it for, it should look like this: { "expiration": "2018-10-20T10:54:37", "ref_block_num": 92, "ref_block_prefix": 276911189, "max_net_usage_words": 0, "max_cpu_usage_ms": 0, "delay_sec": 0, "context_free_actions": [], "actions": [{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d0040c85353840ccd102700000000000004454f5300000000046d656d6f" } ], "transaction_extensions": [], "signatures": [], "context_free_data": [] } { "expiration": "2018-10-20T10:54:42", "ref_block_num": 102, "ref_block_prefix": 3271438144, "max_net_usage_words": 0, "max_cpu_usage_ms": 0, "delay_sec": 0, "context_free_actions": [], "actions": [{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d0080c85353840ccd102700000000000004454f5300000000046d656d6f" } ], "transaction_extensions": [], "signatures": [], "context_free_data": [] } { "expiration": "2018-10-20T10:54:45", "ref_block_num": 109, "ref_block_prefix": 718898287, "max_net_usage_words": 0, "max_cpu_usage_ms": 0, "delay_sec": 0, "context_free_actions": [], "actions": [{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d00c0c85353840ccd102700000000000004454f5300000000046d656d6f" } ], "transaction_extensions": [], "signatures": [], "context_free_data": [] } To make this into one transaction, copy and paste each of the actions into the first json output, as follows: { "expiration": "2018-10-20T10:54:37", "ref_block_num": 92, "ref_block_prefix": 276911189, "max_net_usage_words": 0, "max_cpu_usage_ms": 0, "delay_sec": 0, "context_free_actions": [], "actions": [{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d0040c85353840ccd102700000000000004454f5300000000046d656d6f" },{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d0080c85353840ccd102700000000000004454f5300000000046d656d6f" },{ "account": "eosio.token", "name": "transfer", "authorization": [{ "actor": "fromaccount", "permission": "active" } ], "data": "00f2d4142123e95d00c0c85353840ccd102700000000000004454f5300000000046d656d6f" } ], "transaction_extensions": [], "signatures": [], "context_free_data": [] } Finally, save this json file, and execute it as follows: cleos push transaction my_json_file.json