If the account doesn't exist, currently an IBC transfer fails. The expected behavior is that the account is created and the funds are transferred.
to test this, send funds from alice@chainA to bob@chainB, then from bob@chainB to charlie@chainA. Charlie's address doesn't have an associated account on chainA
Hmm. I think this is probably reasonable behaviour in most cases, as long as the address is valid. I do wonder if there might be cases where you (the sender) specifically wanted to transfer to an existing account, though - maybe it should be an option (boolean) on the packet?
Decided against an option for now. Users will just need to be careful not to mis-enter addresses.
What error does this fail with, precisely? Reading the code it seems like it should already work this way but I must be missing something.
I don't think this is actually an issue. I'm unable to reproduce with current code. Closing.
Most helpful comment
Decided against an option for now. Users will just need to be careful not to mis-enter addresses.