Adds a change output to the transaction.
The provided inputs are not added to the transaction, but only used to determine the change. It is assumed that the inputs were previously added, for example via "createrawtransaction"
.
Optionally a position can be provided, where the change output should be inserted, starting with 0
. If the number of outputs is smaller than the position, then the change output is added to the end. Change outputs should be inserted before reference outputs, and as per default, the change output is added to the`first position.
If the change amount would be considered as dust, then no change output is added.
Arguments:
Name | Type | Presence | Description |
---|---|---|---|
rawtx |
string | required | the raw transaction to extend |
prevtxs |
string | required | a JSON array of transaction inputs |
destination |
string | required | the destination for the change |
fee |
number | required | the desired transaction fees |
position |
number | optional | the position of the change output (default: first position) |
The format of prevtxs
is as following:
[
{
"txid" : "hash", // (string, required) the transaction hash
"vout" : n, // (number, required) the output number
"scriptPubKey" : "hex", // (string, required) the output script
"value" : n.nnnnnnnn // (number, required) the output value
}
,...
]
Result:
"rawtx" // (string) the hex-encoded modified raw transaction
Example:
$ omnicore-cli "omni_createrawtx_change" \
"0100000001b15ee60431ef57ec682790dec5a3c0d83a0c360633ea8308fbf6d5fc10a779670400000000ffffffff025c0d00000 \
000000047512102f3e471222bb57a7d416c82bf81c627bfcd2bdc47f36e763ae69935bba4601ece21021580b888ff56feb27f17f \
08802ebed26258c23697d6a462d43fc13b565fda2dd52aeaa0a0000000000001976a914946cb2e08075bcbaf157e47bcb67eb2b2 \
339d24288ac00000000" \
"[{\"txid\":\"6779a710fcd5f6fb0883ea3306360c3ad8c0a3c5de902768ec57ef3104e65eb1\",\"vout\":4, \
\"scriptPubKey\":\"76a9147b25205fd98d462880a3e5b0541235831ae959e588ac\",\"value\":0.00068257}]" \
"1CE8bBr1dYZRMnpmyYsFEoexa1YoPz2mfB" 0.000035 1