createpsbt (0.21.0.0 RPC)

createpsbt [{"txid":"hex","vout":n,"sequence":n,"pegin_bitcoin_tx":"hex","pegin_txout_proof":"hex","pegin_claim_script":"hex","issuance_amount":n,"issuance_tokens":n,"asset_entropy":"hex","asset_blinding_nonce":"hex","blind_reissuance":bool},...] [{"address":amount,"blinder_index":n,"asset":"str"},{"data":"hex"},...] ( locktime replaceable psbt_version )

Creates a transaction in the Partially Signed Transaction format.
Implements the Creator role.

Arguments:
1. inputs                                  (json array, required) The json objects
     [
       {                                   (json object)
         "txid": "hex",                    (string, required) The transaction id
         "vout": n,                        (numeric, required) The output number
         "sequence": n,                    (numeric, optional, default=depends on the value of the 'replaceable' and 'locktime' arguments) The sequence number
         "pegin_bitcoin_tx": "hex",        (string, required) The raw bitcoin transaction (in hex) depositing bitcoin to the mainchain_address generated by getpeginaddress
         "pegin_txout_proof": "hex",       (string, required) A rawtxoutproof (in hex) generated by the mainchain daemon's `gettxoutproof` containing a proof of only bitcoin_tx
         "pegin_claim_script": "hex",      (string, required) The witness program generated by getpeginaddress.
         "issuance_amount": n,             (numeric) The amount to be issued
         "issuance_tokens": n,             (numeric) The number of asset issuance tokens to generate
         "asset_entropy": "hex",           (string) For new asset issuance, this is any additional entropy to be used in the asset tag calculation. For reissuance, this is the original asaset entropy
         "asset_blinding_nonce": "hex",    (string) Do not set for new asset issuance. For reissuance, this is the blinding factor for reissuance token output for the asset being reissued
         "blind_reissuance": bool,         (boolean, optional, default=true) Whether to mark the issuance input for blinding or not. Only affects issuances with re-issuance tokens.
       },
       ...
     ]
2. outputs                                 (json array, required) The outputs (key-value pairs), where none of the keys are duplicated.
                                           That is, each address can only appear once and there can only be one 'data' object.
                                           For compatibility reasons, a dictionary, which holds the key-value pairs directly, is also
                                           accepted as second parameter.
     [
       {                                   (json object)
         "address": amount,                (numeric or string, required) A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC
         "blinder_index": n,               (numeric) The index of the input whose signer will blind this output. Must be provided if this output is to be blinded
         "asset": "str",                   (string) The asset tag for this output if it is not the main chain asset
       },
       {                                   (json object)
         "data": "hex",                    (string, required) A key-value pair. The key must be "data", the value is hex-encoded data
       },
       ...
     ]
3. locktime                                (numeric, optional, default=0) Raw locktime. Non-0 value also locktime-activates inputs
4. replaceable                             (boolean, optional, default=false) Marks this transaction as BIP125 replaceable.
                                           Allows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible.
5. psbt_version                            (numeric, optional, default=2) The PSBT version number to use.

Result:
"str"    (string) The resulting raw transaction (base64-encoded string)

Examples:
> elements-cli createpsbt "[{\"txid\":\"myid\",\"vout\":0}]" "[{\"data\":\"00010203\"}]"