So there are 4 reasons listed on ExistenceReason for an Asset account namely:

  1. Consumer,
  2. Sufficient,
  3. DepositHeld,
  4. DepositRefunded

Usually minting an asset would use the Consumer reason. I'd like to create one using the DepositHeld reason, how can I achieve that using PolkadotJS? Also, bonus question, why is DepositRefunded a reason for asset account existence?

1 Answer 1


So there's a function called touch() in pallet assets which will allow you to reserve the deposit AssetAccountDeposit in the runtime config, with the reason of DepositHeld(..).

For sufficient reason, the asset must be created with is_sufficient = true. Currently, I did not find polkadot-js to support setting this parameter during asset minting.

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.