I want to open HRMP channel with Rockmine on rococo. But I got the Barrier error and can't understand what is wrong with my request.

Here is the error that I found on rococo side.

This is my encoded call data 0x29000101000210000400000000070010a5d4e81300000000070010a5d4e800060003005ed0b2381700e8030000e8030000009001000d010004000100a10f

There is no additional events that can help me to figure out what exactly wrong. Does anybody has any suggestion?

2 Answers 2


First, this is because you're using a non-root account to send the XCM of HRMP request. You should use sudo or governance to do this. If you use a non-root account to call polkadotXcm.send, it will add the DescendOrigin instruction as the first instruction into your messsage, and then blocked by rococo AllowTopLevelPaidExecutionFrom barrier.

Make sure your sovereign account in the relaychain has sufficient balance to withdraw, otherwise it will FailedToTransactAsset

Then, there are several improvements you need to pay attention to, although they're not releated to barrier:

  1. You can add a RefundSurplus instruction between Transact and DepositAsset, it can refund your surplus weight for transact.
  2. The beneficiary of DepositAsset should be your sovereign account on rococo, your paraId is 2124, so it should be {0, X1(Parachain(2124))}, rather than Parachain(1000). It will put unspent tokens into your sovereign account on rococo.

enter image description here

  • Useful encoded call data from Guantong 0x29000101000214000400000000070010a5d4e81300000000070010a5d4e80006000700f2052a01381700e8030000e803000000900100140d0100040001003121
    – rust.dev
    Commented Sep 23, 2022 at 13:56
  • 1
    Yeah, I delete it because it only can be decoded in your parachain. And I added the screeshot for everyone to see.
    – Guantong
    Commented Sep 23, 2022 at 14:01
  • When exactly the transaction will be executed after motion? polkadot.js.org/apps/…
    – rust.dev
    Commented Sep 23, 2022 at 14:34
  • Sorry. I have the same Barrier error. Can we talk via some google meeting?
    – rust.dev
    Commented Sep 23, 2022 at 15:17
  • 2
    I think that question is off topic. Maybe you should ask another question about how motion works. I’d like to answer it there.
    – AurevoirXavier
    Commented Sep 23, 2022 at 15:39

Great tutorial for opening channel with Common good parachain.



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.