Backlog user stories - bistecglobal/blockchain-certificates-issuer GitHub Wiki

Issue a certifcate as an issuer

As a issuer I can issue an certificate to a holder (trainee) (with the ethereum address). When I issue a certificate I can get a sharable link which can be share with the holder so that holder can view the certificate.

UI screen (use the existing certificates screen)

  • Input field for holder's ethereum address.
  • Button to issue the certificate.
  • After user clicked the 'Issue' button, a unique sharable link should be generated which can be shared with holder.

Smart contract function (store the Id of the certificate details)

  • function to issue the certificate.
  • You'll need to create the most of the basic functions of the smart contract at this point.
  • You should not store all the details of the certificate in the blockchain. You only store the Id (GUID) of the certificate in the blockchain. So the details can be retrieved from the db using that id.

Integration smart contract fuction with the UI


View and share Certificate as a holder (trainee)

An a holder I can view certificate which is already shared with me using the link shared. I can share the certificate publicly (without specifying any specific verifier address) with a pubilcly accessible link so that anyone can verify the certificate.

UI screen

  • Certificate details should be loaded when user(trainee) visits the page.
  • Button to share the certificate.
  • After user clicks the 'Share' button, a unique sharable link should be generated which can be shared publicly.

API endpoint

  • Details of the specific certificate should be retrieved using this api endpoint

Smart contract functions

  • function to retrieve the certificate id from the blockchain.
  • function to share the certificate publicly

Verify the Certificate as a verifier (Any public user)

UI screen

  • Any details are not showed to the user when visits the page.
  • Button to verify the certificate.
  • After user clicked the 'Verify' button certificate details, etheruem addresses of issue and holder, other public details such as smart contract address are shown.

API endpoint

  • Details of the specific certificate should be retrieved.

(Next iteration) Certificate details retrieved only if the user had rights to see those details. (those rights has to retrieved from the blockchain)

(Next iteration) Only shared parts of the certificate details are shown to the user

Smart contract functions

  • function to get the details (GUID) of the certificate from the blockchain.

(Next iteration) function to know if user has rights to see the specific certificate.