Having issue with sendwithdatafrom command

+1 vote

Hello Multichain team,
i have following three addresses :

  • 1TvLmHTqxBoC6u71W9G3N76ikZRYubxMoWGFtJ
  • 1aRquEaTx82Pe4XYwUUWurcCiwzXPvW8uyRQZs
  • 1LLzD2JdYDLUndtf6jnaunqewW3YySbGs8JSaE

Now, i have issue one asset & send it to another two addresses using sendwithdatafrom command.

Asset was transfer successfully form fist address to another two addresses.

Now, when i tried to send some of them assets from second to third address internally then i'm getting below error:

> E:\Calida\multichain-windows-2.0.5>multichain-cli chian1 sendwithdatafrom 1aRquEaTx82Pe4XYwUUWurcCiwzXPvW8uyRQZs 1LLzD2JdYDLUndtf6jnaunqewW3YySbGs8JSaE "{\"BitCoin\":500,\"data\":{\"json\":\"Send Asset\"}}" "{\"json\": [{ \"description\": \"Reward\",\"transaction_charge\": \"0.00\",\"wallet_balance\": [ {\"1aRquEaTx82Pe4XYwUUWurcCiwzXPvW8uyRQZs\": \"500.00\",\"1LLzD2JdYDLUndtf6jnaunqewW3YySbGs8JSaE\": \"500.00\"}]}]}"
{"method":"sendwithdatafrom","params":["1aRquEaTx82Pe4XYwUUWurcCiwzXPvW8uyRQZs","1LLzD2JdYDLUndtf6jnaunqewW3YySbGs8JSaE",{"BitCoin":500,"data":{"json":"Send Asset"}},{"json":[{"description":"Reward","transaction_charge":"0.00","wallet_balance":[{"1aRquEaTx82Pe4XYwUUWurcCiwzXPvW8uyRQZs":"500.00","1LLzD2JdYDLUndtf6jnaunqewW3YySbGs8JSaE":"500.00"}]}]}],"id":"13186132-1585229365","chain_name":"chian1"}

error code: -6
error message:
Insufficient funds. There are outputs with inline metadata (lockinlinemetadata runtime parameter).

I have verified that both addresses have send & receive permissions and also have sufficient balances.

Then why it won't allow me to transfer assets?

asked Mar 26, 2020 by Nikunj Dhameliya

1 Answer

+1 vote
Best answer

This is because you have sent inline metadata in the transaction outputs that contain the assets, and by default MultiChain is careful not to spend those outputs by default. You should probably not use inline metadata (whose purpose is metadata specific to that output) but regular metadata instead, like your json structure. Or if you want, you can change the lockinlinemetadata runtime parameter to allow outputs containing inline metadata to be spent freely.

answered Mar 26, 2020 by MultiChain
selected Mar 27, 2020 by Nikunj Dhameliya