I am looking into XCMv2 and given the standard XcmOriginToCallOrigin
configs on both chains:
and environment: HydraDX runtime & Acala runtime.
I was able to construct a polkadotXcm.send
call to withdraw an asset from the sibling account on the other chain and send it back to a local account.
But it does not seem to be possible to withdraw an asset from your local chain (e.g. treasury or sibling) and send them to a (sibling) account on the other chain via democracy (dispatches as root).
Neither of the calls send
, execute
or reserveTransferAssets
seems to provide the ability to do this and fails with FailedToTransactAsset
. Presumably the xcm executor does not know from which account it should withdraw the asset and I could add a converter for (origin: superuser, location:here)
and then use execute
or reserveTransferAssets
?
This is less favourable option tho as I would prefer not having to change anything in the runtime and use just an XCM call.