MRC402(NFT)
MRC-402 is Token like NFT
Support mixed assets for NFT.
MRC402 supports the mixed assets and shares some portion of commission to a copyright holder or a profit share holder on Sales/Auction.
It supports to create Token/MRC402 and Mint and Burn by QR Code or Deeplink on MetaWallet webpage.
Here is the MRC402’s main features.
Mixed Assets
You can create the NFT with combining several tokens not only one token.
James set as 5 Metacoin and 10 JamesToken(MRC010) per one NFT as initial assets then create 100 JamesNFT.
It’s withdrawn the 500 Metacoin(5MTC*100), 1000 JamesToken(10 JamesToken * 100) from creator’s wallet.
It’s valued of 5 Metacoin, 10 JamesToken on 1 JamesNFT.
If a user who has got JameNFT melt it or James who create the JamesNFT burn it, you can get the amount of melted or burned * 5 Metacoin, 10 JemaesToken(MRC010).
Copyright Information
NFT is usually used in work of art.
However, there are so confused to users who want to own the NFT. because it is unclear which art is based on.
In MRC402, copyright information can be set only once when NFT is created.
It will ensure that those who wish to own the NFT recognize which work they have by reference this information.
Burn
Burn will reduce the total issuance and it can do by an issuer only.
If there is an initial asset, it will be returned equal to the burned amount * the initial asset.
Mint
Mint will increase the total issuance and can only be issued by issuer.
If there is an initial asset, it will be reduced from the creator’s wallet by the amount of mint * initial asset.
Transfer
MRC402 can send multiple NFTs on transaction not like MRC401.
Melt
Users who has got NFT can do the Melting.
But, If you specify a date that Melting function can be executed on creating the NFT, you can not do Melting before that date.
James sends 100 MTC to Mary with a lockup until January.01.2025.
Mary can not give 100 MTC to someone until that date.
But, If James send to Mary it after setting the initial asset as 100 MTC and melting point as January.01.2025 and issuing 1 MRC402 Mary can transfer to someone at any time and the user who has got it get 100 MTC with melting after January.01.2015.
It has the same effect as a lockup and can also be used as a transferable token.
Support various media
It can publish the NFT by MP4 files as well as images.
It saves in zzal.io because the storing in blockchain consumes excessive traffic and capacity.
zzal.io is a service that stores with distributing images and videos.
Support Platform
We open a website “HotDeal.io” that supports NFT trading and provides a variety of information related trading NFT.
It can be expected to get advertising and transaction fees.
ADV can be carried out in various support methods.
If you want to get the commission at a certain percentage on the transaction, sellers send the NFT to “HotDeal.io”,
“HotDeal.io” send to the seller with deducted the commission after getting the transaction amount from buyers.
After all, it becomes subordinate to a web service called “HotDeal.io” not a decentralized transaction.
If it sell/auction in Metacoin Network after fill out the platform name, commission rate and receiver’s address for commission on registering MRC402,
Trading is made on the Metacoin Network. The fee is distributed according to the information.
Support ShareHolder
You can enter the copyright holder on creating NFT or a user who receive the commission on trading.
We called it “ShareHolder”.
ShareHolder can put the address and commission rate up to 5 addresses.
It’s set up at the time of initial creation and can not be changed.
It supports multiple copyright holders and give stable profits on the Metacoin Network.
It helps you to be more creative.
- MRC402 Name
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
Meta-NFT
MRC402 Owner
MTATLnT6SGKE8RU0CBPoDRfUXL5lr4SLece1a6ee
- MRC400 Project URL
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
https://mrc402-project.com/
- MRC400 Project Image URL
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
https://mrc400-project.com/images/project.png
- Only designated tokens and Metacoin (Token ID: 0) can be used for MRC401 token auctions and sales under this MRC400 token
- If not specified, set to "0"
0
- This value refers to the classification in which the MRC400 token is used. It does not affect Metacoin or Metacoin-based blockchains.
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
Baseball Card
- Set the field where MRC401 Token is used
- This value is a description of the MRC400 Token and does not have any effect on Metacoin or Metacoin-based blockchain.
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
Metacoin NFT base RPG Game
- Specify the URL of JSON Data that stores detailed data of MRC401 token.
- If the
url
value of MRC401 Token is an empty string, this value is used. - The URI value allows for ID substitution by clients. If the string {id} exists in any URI, clients MUST replace this with the actual token ID in hexadecimal form. This allows for a large number of tokens to use the same on-chain string by defining a URI once, for that large number of tokens.
- This value is the URL of a JSON file that stores data that can be referenced by an application using MRC401 Token
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
https://mrc400-project.com/info/{id}
- Specify the image URL of the MRC401 token.
- If the
imageurl
value of MRC401 Token is an empty string, this value is used. - The URI value allows for ID substitution by clients. If the string {id} exists in any URI, clients MUST replace this with the actual token ID in hexadecimal form. This allows for a large number of tokens to use the same on-chain string by defining a URI once, for that large number of tokens.
- This value is the URL of the image to be used when displaying MRC401 Token in an application that uses MRC401 Token
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
https://mrc400-project.com/info/{id}
- MRC400 detail info
- Should be json string
- This value is does not have any effect on Metacoin or Metacoin-based blockchain
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat owner, name, url, imageurl, category, itemurl, itemimageurl, data, tkey
- ex) ecdsa_sign(privatekey of owner address, owner +'|'+ name +'|'+ url +'|'+ imageurl+'|'+category+'|'+itemurl+'|'+itemimageurl+'|'+data+'|'+tkey)
POST /mrc402 HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
MRC402 Token ID
MRC400_db7da6bc848ba62e621aede40f75dc760_0000000000000000000000000000000000000001
GET /mrc402/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"owner": "MTPBF7OHamYp0luagfi2RcleKFyQf2qU9d530ee2",
"name": "MRC400 Project",
"url": "https://metacoin.mrc400project.com/",
"image_url": "https://metacoin.mrc400project.com/image/logo.png",
"allow_token": 0,
"category": "PFP type NFT",
"data": "text",
"description": "This project is MRC400 base PFP",
"item_image_url": "https://metacoin.mrc400project.com/image/mrc401/{id}",
"item_url": "https://metacoin.mrc400project.com/mrc401/{id}",
"socialmedia": {
"facebook": "https://facebook.com/demo",
"homepage": "https://homepage.com"
},
"partner": {
"MTrqP2QkpBgBfNwgXsyGk3aWKtt3lQp369797277": "partner",
"MTL97iMddTPADBUethWmlIzx3e6mawn724e865aa": "creator",
"MT7LMaOd9bREtTUP23m0Ge83yA7VNzhUf0399772": "saller"
},
"createdate": 1
}
MRC402 Token ID
Current owner of item MRC402
Address to receive ownership of MRC402 token
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat fromAddr, toAddr, url, tkey
- ex) ecdsa_sign(privatekey of owner address, fromAddr +'|'+ toAddr +'|'+ mrc402id +'|'+tkey)
POST /mrc402/transfer/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- Sell MRC402 tokens.
- If other users purchase tokens, they will receive the specified amount of sales.
- If
sell_fee
is 10, 10% of the transaction amount will be transferred to the MRC400 token holder designated in the MRC402 token, and only 90% of the fee excluding the 10% fee will be received by the MRC402 token holder. - If the value of
sell_fee
is 0, no commission is paid.
- MRC400 Token ID
- The mrc400 token ID of the mrc402 item specified in itemdata.
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat seller, itemdata, tkey
- ex) ecdsa_sign(privatekey of owner address, seller +'|'+ itemdata +'|'+ tkey)
POST /mrc402/sell/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- MRC402 DEX ID
MRC402 Token owner address
- MRC402 Token id list to be sale cancel
- It is the MRC402 Token belonging to the token specified in mrc400id
{"MRC400_db7da6bc848ba62e621aede40f75dc760_0000000000000000000000000000000000000001","MRC400_db7da6bc848ba62e621aede40f75dc760_0000000000000000000000000000000000000002"}
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat seller, itemdata, tkey
- ex) ecdsa_sign(privatekey of owner address, seller +'|'+ itemdata +'|'+ tkey)
POST /mrc402/unsell/{mrc402_dex_id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
MRC402 Token ID
MRC400_dd1605be6960d9d6ba7bbeed9da033980_0000000000000000000000000000000000000001
MRC402 Token buyer address
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat mrc402id, tkey
- ex) ecdsa_sign(privatekey of owner address, mrc402id +'|'+ tkey)
POST /mrc402/buy/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- Melt the MRC402 token.
- Once melted, the item cannot be transferred or sold to others.
- When the MRC402 Token is created, it will be received in the owner's wallet as much as the
initial_price
. - If the
meltint_fee
is 10, 10% of the initial_price will be transferred to the MRC400 token holder specified in the MRC402 token, and only 90% of the fee excluding the 10% fee will be received by the MRC402 token holder. - If the value of
meltint_fee
is 0, no fee is paid.
MRC402 Token ID
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat mrc402id, tkey
- ex) ecdsa_sign(privatekey of owner address, mrc402id +'|'+ tkey)
POST /mrc402/melt/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- Auction MRC402 tokens.
- You can cancel an auction using the /mrc402/unauction protocol.
- If there is a bidder, the auction cannot be canceled.
- If
sell_fee
is 10, 10% of the transaction amount will be transferred to the MRC400 token holder designated in the MRC402 token, and only 90% of the fee excluding the 10% fee will be received by the MRC402 token holder. - If the value of
sell_fee
is 0, no commission is paid.
- MRC402 Token ID
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat seller, itemdata, tkey
- ex) ecdsa_sign(privatekey of owner address, seller +'|'+ itemdata +'|'+ tkey)
POST /mrc402/auction/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- If there is a bidder, the auction cannot be canceled.
- MRC402 DEX ID
MRC402 Token owner address
- MRC402 Token id list to be sale cancel
- It is the MRC402 Token belonging to the token specified in mrc400id
{"MRC400_db7da6bc848ba62e621aede40f75dc760_0000000000000000000000000000000000000001","MRC400_db7da6bc848ba62e621aede40f75dc760_0000000000000000000000000000000000000002"}
Temporary key for Sign(return value of GET /getkey/transfer)
- ECDSA sign for concat seller, itemdata, tkey
- ex) ecdsa_sign(privatekey of owner address, seller +'|'+ itemdata +'|'+ tkey)
POST /mrc402/unauction/{mrc402_dex_id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
MRC402 Token ID
MRC400_dd1605be6960d9d6ba7bbeed9da033980_0000000000000000000000000000000000000001
MRC402 Token auction bidder address
Temporary key for Sign(return value of GET /getkey/transfer)
- auction bid amount
- If there are no bidders, it must be equal to or greater than the starting price of the auction.
- If there is a bidder, it must be greater than the current bid amount.
- The bid amount must be equal to the auction opening price or the auction opening price plus a multiple of the auction bid units.
- If there are no bidders and the auction start price is 100 and the bid unit is 5, it must be 100, 105, 110, ...
- If there is a bidder, the current bid is 120, the auction starting price is 100, and the bid unit is 5, it should be 125, 130, 135, ...
100
- This value should be the ID of the token specified to be used in the auction.
0
- ECDSA sign for concat mrc402id, amount, token, tkey
- ex) ecdsa_sign(privatekey of owner address, mrc402id +'|'+ amount + '|' + token + '|' + tkey)
POST /mrc402/bid/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
- Process the auction closing.
- This replaces the JobScheduler inside the BlockChain.
- It can be called without permission or signature, and the auction is closed according to the already established procedure.
- If you call it before the auction end time, you will get an error.
- If you call for an auction that has already ended, you will get an error.
MRC402 Token ID
MRC400_dd1605be6960d9d6ba7bbeed9da033980_0000000000000000000000000000000000000001
GET /mrc402/auctionfinish/{mrc402id} HTTP/1.1
Host: rest.metacoin.network:20923
Accept: */*
{
"transaction_id": "text"
}
Last updated