z_sendmany - Zcash 5.10.0 RPC

z_sendmany "fromaddress" [{"address":... ,"amount":...},...] ( minconf ) ( fee ) ( privacyPolicy )

Send a transaction with multiple recipients. Amounts are decimal numbers with at
most 8 digits of precision. Change generated from one or more transparent
addresses flows to a new transparent address, while change generated from a
legacy Sapling address returns to itself. When sending from a unified address,
change is returned to the internal-only address for the associated unified account.
When spending coinbase UTXOs, only shielded recipients are permitted and change is not allowed;
the entire value of the coinbase UTXO(s) must be consumed.

Arguments:
1. "fromaddress"         (string, required) The transparent or shielded address to send the funds from.
                           The following special strings are also accepted:
                               - "ANY_TADDR": Select non-coinbase UTXOs from any transparent addresses belonging to the wallet.
                                              Use z_shieldcoinbase to shield coinbase UTXOs from multiple transparent addresses.
                           If a unified address is provided for this argument, the TXOs to be spent will be selected from those
                           associated with the account corresponding to that unified address, from value pools corresponding
                           to the receivers included in the UA.
2. "amounts"             (array, required) An array of json objects representing the amounts to send.
    [{
      "address":address  (string, required) The address is a taddr, zaddr, or Unified Address
      "amount":amount    (numeric, required) The numeric amount in ZEC is the value
      "memo":memo        (string, optional) If the address is a zaddr, raw data represented in hexadecimal string format. If
                           the output is being sent to a transparent address, it’s an error to include this field.
    }, ... ]
3. minconf               (numeric, optional, default=10) Only use funds confirmed at least this many times.
4. fee                   (numeric, optional, default=null) The fee amount in ZEC to attach to this transaction. The default behavior
                         is to use a fee calculated according to ZIP 317.
5. privacyPolicy         (string, optional, default="LegacyCompat") Policy for what information leakage is acceptable.
                         One of the following strings:
                               - "FullPrivacy": Only allow fully-shielded transactions (involving a single shielded value pool).
                               - "LegacyCompat": If the transaction involves any Unified Addresses, this is equivalent to
                                 "FullPrivacy". Otherwise, this is equivalent to "AllowFullyTransparent".
                               - "AllowRevealedAmounts": Allow funds to cross between shielded value pools, revealing the amount
                                 that crosses pools.
                               - "AllowRevealedRecipients": Allow transparent recipients. This also implies revealing
                                 information described under "AllowRevealedAmounts".
                               - "AllowRevealedSenders": Allow transparent funds to be spent, revealing the sending
                                 addresses and amounts. This implies revealing information described under "AllowRevealedAmounts".
                               - "AllowFullyTransparent": Allow transaction to both spend transparent funds and have
                                 transparent recipients. This implies revealing information described under "AllowRevealedSenders"
                                 and "AllowRevealedRecipients".
                               - "AllowLinkingAccountAddresses": Allow selecting transparent coins from the full account,
                                 rather than just the funds sent to the transparent receiver in the provided Unified Address.
                                 This implies revealing information described under "AllowRevealedSenders".
                               - "NoPrivacy": Allow the transaction to reveal any information necessary to create it.
                                 This implies revealing information described under "AllowFullyTransparent" and
                                 "AllowLinkingAccountAddresses".

Result:
"operationid"          (string) An operationid to pass to z_getoperationstatus to get the result of the operation.

Examples:
> zcash-cli z_sendmany "t1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd" '[{"address": "ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf", "amount": 5.0}]'
> zcash-cli z_sendmany "ANY_TADDR" '[{"address": "t1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd", "amount": 2.0}]'
> zcash-cli z_sendmany "ANY_TADDR" '[{"address": "t1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd", "amount": 2.0}]' 1 null 'AllowFullyTransparent'
> zcash-cli z_sendmany "ANY_TADDR" '[{"address": "t1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd", "amount": 2.0}]' 1 5000
> curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "z_sendmany", "params": ["t1M72Sfpbz1BPpXFHz9m3CdqATR44Jvaydd", [{"address": "ztfaW34Gj9FrnGUEf833ywDVL62NWXBM81u6EQnM6VR45eYnXhwztecW1SjxA7JrmAXKJhxhj3vDNEpVCQoSvVoSpmbhtjf", "amount": 5.0}]] }' -H 'content-type: text/plain;' http://127.0.0.1:8232/


Maintained by @_garethtdavies; modified by: mdr0id;license of the docs is MIT (see zcash repo), license of the scripts and webpage is also MIT (github repo)

Note it uses a mainnet zcash node