A token within the TimePiecePassport collection represents the ownership of a watch. The information about this watch is stored in metadata that is linked to this token.
The data is stored permanently on ArWeave.
Documents on ArWeave
When someone sends a watch to OpenChrono's Authentication network, it is accurately condition reported and stored in a secure third party vault. Once these steps are complete, OpenChrono collects the documentation and stores it on ArWeave for anyone to see.
Additionally, a Terms-and-Conditions (T&C) document for every sale is created.
On ArWeave every document is indicated with a unique tx-id. This means that if a document needs to be updated, a new document will be uploaded instead with a new tx-id. Uploaded items can be accessed with the following link: https://arweave.net/<your tx id>.
All the documents that are uploaded to ArWeave for a certain token will be combined in a single passport. This passport is used as a representation of the watch and its owner. The passport itself is represented on ArWeave as a JSON file. This metadata links all uploaded documents together. Additionally, this document contains the seller, buyer, token ID, token contract, date, and time. This document is then uploaded and its tx-id is mapped to the minted token in the TimePieceNFT contract.
The image below shows an example of the relations.
The correct link for a token can be found by using the tokenURI() function (or its alias getTimePiecePassport()).
Minting
Minting is done after a watch is registered in Payload for the first time. The documents associated with authentication, legal, and storage are first stored in Payload (and consequently uploaded to ArWeave). Next, information about the watch and a description is stored in Payload. All this data is merged together in a single metadata file. When the watch data in Payload is published the NFT is minted and the tx-id of the metadata of linked to the NFT. The NFT is minted to the owner of the watch.
Minting can only be conducted once the asset is authenticated and physically vaulted, without these steps it is not possible to create a complete 'Digital Twin'
Updating watch data
If any data in the metadata has been updated in Payload (for example a description or the T&C is updated), a new metadata is generated. The tx-id of this newly uploaded metadata is then used to replace the currently linked tx-id to the token in the TimePieceNFT contract.
Metadata format
OpenSea is one of the biggest NFT marketplaces. We want our metadata to be compatible with their format so that data will be properly displayed on different marketplaces. We inherit the OpenSea specification, but we've added attributes that are relevant to TimePiece Passports™, like an array of warranties.
An example is shown below (and can also be accessed here). The corresponding OpenSea listing can be found here.
{"openchrono_schema_version":1,"collection_name":"TimePiece Passports","name":"Rolex GMT Master II","attributes":[ {"trait_type":"Brand","value":"Rolex" }, {"trait_type":"Model","value":"GMT Master II" }, {"trait_type":"Year","value":2023 }, {"trait_type":"Reference Number","value":"126720 VTNR" }, {"display_type":"date","trait_type":"In vault since","value":1706270428000 }, {"trait_type":"Vault","value":"Malca Amit" }, {"trait_type":"Case Diameter (mm)","value":40 }, {"trait_type":"Case Material","value":"Steel" }, {"trait_type":"Crystal","value":"Sapphire" }, {"trait_type":"Dial Colour","value":"Black" }, {"trait_type":"Dial Numerals","value":"No numerals" }, {"trait_type":"Bezel Material","value":"Ceramic" }, {"trait_type":"Bezel Colour","value":"Multi Colour" }, {"trait_type":"Bracelet Material","value":"Steel" }, {"trait_type":"Clasp & Buckle Material","value":"Steel" }, {"trait_type":"Includes Extra Strap(s)","value":"No" }, {"trait_type":"Movement Type","value":"Automatic" }, {"trait_type":"Movement Power Reserve","value":70 }, {"trait_type":"Movement Jewels","value":31 }, {"trait_type":"Watch Grading","value":"handlingMarks" }, {"trait_type":"Time Keeping","value":"Within Manufacturer specifications" }, {"trait_type":"Number of Links","value":12 }, {"trait_type":"Box","value":"Genuine Box - Original To Watch" }, {"trait_type":"Papers","value":"Warranty card" }, {"trait_type":"Opened for Inspection","value":"Yes" }, {"trait_type":"Water Resistance Test Passed","value":"Yes" }, {"trait_type":"Complication","value":"GMT" }, {"trait_type":"Complication","value":"Date" }, {"trait_type":"Manual","value":"Booklets" }, {"trait_type":"Water Resistance (m)","value":100 } ],"terms_and_conditions":"https://arweave.net/vlXC6XqoheZv3Fjy1xSG1ikTTk975zpNkClIjVJutUg", "description":"Overall : Watch showing light handling marks.\n\nCase : 40mm stainless steel.\n\nBezel : Standard two tone ceramic bezel.\n\nDial : Classic black with luminous hour markers. The dial is pristine, with no fading or discolouration. The hands retain their original luminosity.\nCrystal: Sapphire crystal is flawless, with no scratches or chips.\n\nBracelet : Oyster bracelet in stainless steel with an Oysterlock clasp. The clasp operates smoothly with a secure lock.\n\nMovement : Calibre 3285\n\n\n---\n**OpenChrono TimePiece Passport Details**\n\nThis [digital twin](https://openchrono.gitbook.io/openchrono/about-openchrono.io/digital-twins-and-timepiece-passports-tm) represents a particular asset on the OpenChrono platform and is linked to the asset's corresponding unique TimePiece Passport™.\n\nThe Passport holds the following warranties for the asset:\n1: **Asset Condition**\n2: **Digital Twin Pairing**\n3: **A set of contracts associated with the specific asset**\n4: **A theft, Loss & Fraud Report**\n\nAll assets on the OpenChrono platform are stored in secure,third party vaults. Storage / Vault fees are prepaid for 12 months from the moment the digital twin is purchased. Subsequent vault fees are the sole responsibility of the asset owner, details can be found at [OpenChronos documentation centre](https://openchrono.gitbook.io/openchrono/). All assets are fully insured at all times.\n\nWhilst holding this digital twin you accept the following [Terms and Conditions](https://openchrono.gitbook.io/openchrono/user-agreement/users-terms-of-service). The Terms may be amended from time to time, and in dealing with this digital twin you are deemed to have accepted any such amendments. You are also deemed to have accepted any amendments made in accordance with the provisions of the relevant Terms. \n \nNote : Warranties are not valid unless warranty fees are paid - They are AUTOMATICALLY APPLIED on the OpenChrono platform, but not always on other Web3 enabled marketplaces. \nPlease check with OpenChrono support before making the purchase.\n",
"external_url":"https://openchrono.io/en-gb/passport/oc-24-0005","image":"https://arweave.net/_FoexwbAnUabhznbeu99q2TxSKRMSFmFuyDpdlJu7I8","all_media":["https://arweave.net/_FoexwbAnUabhznbeu99q2TxSKRMSFmFuyDpdlJu7I8","https://arweave.net/DsFSCDUutOsko5gKkfa-d_gmxf8zt_2IELpN3j5CCnE","https://arweave.net/4oyzL5t4Yhr-FBPMzKZz9UaEnxFrsfelV4Lqq9Vzq5w","https://arweave.net/Rwaw_C6edUZG7qwBkF60xVOn9gl6DAcneONDtqiLxsY","https://arweave.net/NN-xBejF1YpnIsyzOMnMmExmhI2pH-_inDQP2d9FjoQ","https://arweave.net/Zz4y0bc-N8xK9eH9dIU_zIYvtn991CSe2kW9Ac05ujQ","https://arweave.net/ljZd1kVk1bO68ODCXrscTUcdcxjWeChMJX4sDRUCzZg","https://arweave.net/OPm6N6gQgmcpCJATrbBzjEgz6tVJYHI7EjW3iQ9Vt9M","https://arweave.net/UPwDXhlcJKxYJm34yFbkeCo472PCCxGtbufnWh9bh2E","https://arweave.net/PhIhOjf83jgjgoUjPOtjkHpPcIFSieAffJiX3dzS1gU","https://arweave.net/zNGGdCeERcJiwXWW8jNfkz0gbYsuSHlw8aXr8E0zT9E","https://arweave.net/N21d-p7N9ii7Hu-x6sS13DMe8VihXA73s4S6jILbfzM","https://arweave.net/0xZJeZq1AsknjrZMd2WgJ7aoan0VWIj5GhYJwzILCfw","https://arweave.net/l-AfGgDjgf4yIQ7CCFDUHKOM6dopuaWuPUrQjbEmPyo","https://arweave.net/R8XiKxxAOSFznM5XNMX6FVbpFB-pm6009ETvnMC5PIM","https://arweave.net/2CysmbF9rMOxYoqpPGTRBlvr4CxbNvPWxnqnx6mFxn0","https://arweave.net/9R8imdmcoAasr1BW1-zuHOczrCP3eW3hp4sqxDp9fa4","https://arweave.net/HiuqH3YYv4fQp_1A0S9IHTtYBzF8ls_aOYcKF8E_duI" ],"warranties":["https://arweave.net/Xz17HOo3mA2_CeBRVVPIT0JZECXX4gEqHg7FnC6QXYo","https://arweave.net/MUAUsRm36kakECOzFtuc1rVyLmhiXkRde7_r2WDBudU" ]}