Hi Eth Magicians, wanted to discuss some thoughts I had regarding digital receipts on the blockchain and interested to hear what others think.
Simple Summary:
Using ERC-721/NFTs as a method of distributing digital receipts for physical purchases. Where the metadata represents an encrypted json receipt.
Abstract:
I’d like to propose the idea of a transaction that flows as follows:
- A customer purchases an item from an online retailer, where checking out leads the customer to payment through a smart contract,
- The smart contract verifys the amount transferred matches the order and provides the user with an standardized receipt NFT.
- When fulfilling the order, the retailer will upload the metadata to this nft which will be encrypted against the customers public key.
Motivation:
If a customer purchases a physical item from an online retailer and uses a cryptocurrency to pay, the purchase will separately includes an invoice/receipt from the retailer that is emailed and/or physically given to the customer. These receipts are critical for many reasons but digital receipts AFAIK have never gained traction. Instead we are left with PDFs and other analogue formats to represent transactions that occurred digitally.
Including an NFT as a receipt will provide a traceable and private link between the funds leaving the customers account and the digital receipt which may include important information such as serial numbers and delivery tracking etc. This means that the customer can automate their record keeping with systems and understand exactly what has been purchased without a human having to provide copies of the receipts. Metamask for example could show this full receipt when you click into an item in your transaction history.
One of the major roadblocks to fully automating our current finance world is that businesses need to keep detailed records of our purchases and retailer systems distribute this detailed information outside of our transactional system (Printing a physical receipt, while separately processing payment through the EFTPOS machine). Requiring a human being to physically make the link between the two, usually by data entry into the financial system. This is archaic and NFTs on the blockchain provide a method for this to be so much better.
Outstanding thoughts:
- A less interesting thought is that the amount in this encrypted receipt could be proven by the retailer using some zero knowledge proof, which could mean a blockchain could reject the transaction if this receipt does not match the amount transferred. Voiding the transaction.
- A more interesting thought would be if the serial number encrypted in this receipt could be proven at a later time by the customer for use in warranty claims, maintenance requests, servicing etc.
Unsure if these are even possible, zero knowledge proofs are hard.
Next Steps:
If this has any sort of interest I could draft up the following standards for people to review:
- Standard JSON format of the digital receipt
- Standard for the encryption of digital receipt to be put as metadata
- Standard for metadata of a NFT Receipt