Jcli says: "invalid account-id, isn't an account address" when I use a yoroi address on scripts

Can someone explain, Why I cannot use yoroi address (extended?) on jcli ?
What the difference between short and long addresses?

I only can send funds via script from a created (via script) address, and I would like to send them to a yoroi wallet.

Thanks.
Stefano.

Hello @stefanosu. It’s not clear to me what you are trying to do, so this is more a generic answer. Basically jcli supports every address type but some address types have special rules.

For example (and I think this is what you are tying to do?) you must not send funds to a reward address. That is simply not possible because it’s not an utxo address.

Yoroi (just like Daedalus) uses group addresses only. We don’t use account addresses in the wallets.

Sorry I’ll try to explain better,
I try to send funds from an address(short) created with jcli,
to a yoroi wallet address(long)
with the script send-money.sh downloaded from https://iohk.zendesk.com/hc/en-us/articles/360036415054-How-to-send-funds-using-a-script-Linux-macOS-

Even if I try to get balance from an address(long) with command
./jcli rest v0 account get $ADDR -h http://127.0.0.1:3100/api
I receive the same error, it work only with short addresses.
Probably I miss the difference between the two type of address,
can you suggest me where to learn about it.
Thanks.
Stefano.

My guess is: you are trying to query an account address but you are providing a group address.

Yes you guess right,
now I know the difference between the two type addresses, and that jcli doesn’t use group address.

So now if I want to send money to a yoroi wallet with jcli,
how can I get the single-address from a group-address?
Thanks.
Stefano.

Take your addresses in Yoroi and get the payload from the bech32 addresses. All group addresses for a Yoroi wallet using the same account key so you should see a set of bytes that are the exact same for all addresses in your wallet. Take this public key and use it to create an account address.

Hi, at the end I did it in this way:
I used cardano-wallet to get the secret key from mnemonic
and then I used jcli to get the public key
and then jcli to get the address
and I sent money to that address still using jcli.

I found some information on Step2, Option A, of this guide: