Introduction
As a token issuer, you can transfer the ownership of your token to someone else with a verified Polymesh account. This means that you will no longer own or have access to the management of your token. You can always cancel a transfer as long as the new owner has not yet accepted it. Keep in mind this is different from transferring individual tokens; in this case you are transferring ownership of the entire asset including functions such as minting, burning, force transfers, token compliance rules, etc..
Learn more about assets on the Polymesh Developer Portal.
Transfer token ownership with the Polymesh App
Step 1: Token issuer to transfer ownership of the asset
- Go to the Polymesh App then fill in the data as per below:
-
- using the selected account: Select your account
- submit the following extrinsic: Select "identity" then "addAuthorization(target, data, expiry)"
Click here to see this image at full resolution. -
target: Select "Identity"
- Identity: Enter the ownership receiver's DID (it begins with 0x)
Click here to see this image at full resolution. -
data: Select "TransferAssetOwnership"
- TransferAssetOwnership: Enter the asset ticker in HEX format
Click here to see this image at full resolution.
Note: Use a HEX converter like this one. For the Output delimiter string, select "None".
Example: The ticker name is "testtoken", which is "4D79207465737420746F6B656E" in HEX.
This HEX value should be padded with zeros to be 12 bytes like "74657374746F6B656E00000" with a 0x prefix, so the value you should enter is "0x74657374746F6B656E00000".
Fill up the offering asset field with zeros until the below message in red disappears:
2. Once all data are filled, click on "Submit Transaction" at the right corner of the page:
3. Another popup window will appear, click on "Sign and Submit" and then sign the transaction with your wallet.
4. A successful transaction is reflected with a green checkmark at the top right of the page:
Step 2: Token issuer to transfer agent of the asset
- Go to the Polymesh App then fill in the data as per below:
-
- using the selected account: Select your account
- submit the following extrinsic: Select "identity" then "addAuthorization(target, data, expiry)"
Click here to see this image at full resolution. -
target: Select "Identity"
- Identity: Enter the agent receiver's DID (it begins with 0x)
Click here to see this image at full resolution. -
data: Select "BecomeAgent"
-
PolymeshPrimitivesTicker: Enter the asset ticker in HEX format
- PolymeshPrimitivesAgentAgentGroup: Select "Full"
Click here to see this image at full resolution.
Note: Use a HEX converter like this one. For the Output delimiter string, select "None".
Example: The ticker name is "testtoken", which is "4D79207465737420746F6B656E" in HEX.
This HEX value should be padded with zeros to be 12 bytes like "74657374746F6B656E00000" with a 0x prefix, so the value you should enter is "0x74657374746F6B656E00000".
Fill up the offering asset field with zeros until the below message in red disappears:
2. Once all data are filled, click on "Submit Transaction" at the right corner of the page:
3. Another popup window will appear, click on "Sign and Submit" and then sign the transaction with your wallet.
4. A successful transaction is reflected with a green checkmark at the top right of the page:
Step 3: Token ownership receiver to query the chain state for incoming authorization and get the AuthID’s
- Go to the Polymesh App then fill in the data as per below:
-
- Selected state query: identity > authorizations(PolymeshPrimitivesSecondaryKeySignatory, u64)
- Paste your DID from your wallet (which begins with 0x) to the field Identity: PolymeshPrimitivesIdentityId
Click here to see this image at full resolution. - Click off the “include the option” toggle
- Click the blue + button at the top right to see authorizations and AuthID’s
Click here to see this image at full resolution. - This will get you the authorization IDs for the TransferAssetOwnership and BecomeAgent at the bottom of the page. Copy them as you will need those at the next steps.
- The authID under "TransferAssetOwnership" will be needed in Step 4 (51771 in this example):
Click here to see this image at full resolution. - The authID under "BecomeAgent" will be needed in Step 5 (51772 in this example):
Click here to see this image at full resolution.
Step 4: Token ownership receiver to accept the ownership transfer
- Go to the Polymesh App then fill in the data as per below:
-
- using the selected account: Select the account that receives the token ownership transfer
- submit the following extrinsic: Select "asset" then "acceptAssetOwnershipTransfer(authid)"
- Authid: paste the AuthID from Step 3
Click here to see this image at full resolution.
2. Once all data are filled, click on "Submit Transaction" at the right corner of the page:
3. Another popup window will appear, click on "Sign and Submit" and then sign the transaction with your wallet.
4. A successful transaction is reflected with a green checkmark at the top right of the page:
Step 5: Token ownership receiver to accept the agent transfer
- Go to the Polymesh Mainnet app then fill in the data as per below:
-
- using the selected account: Select the account that receives the agent ownership transfer
- submit the following extrinsic: externalAgents -> acceptBecomeAgent(authid)
- Authid: paste the second AuthID from Step 3.
Click here to see this image at full resolution.
-
- Once all data are filled, click on "Submit Transaction" at the right corner of the page:
- Another popup window will appear, click on "Sign and Submit" and then sign the transaction with your wallet.
- A successful transaction is reflected with a green checkmark at the top right of the page:
If you have any questions or issues, feel free to open a conversation with our support team through the Polymesh Community page.
Comments
0 comments
Please sign in to leave a comment.