Creating blockchain NFT-based customer experiences with Daml

Blockchain non-fungible tokens (NFTs) have come a long way from their beginnings as proof-of-ownership of digital assets on the blockchain. As more and more creative digital assets are minted as NFTs on the blockchain using smart contracts, we have entered the next phase of evolution. 

Now, the question many brands are asking is, How can we use blockchain NFTs to deliver differentiated experiences to customers who own our NFTs? This emerging trend of blockchain NFT experiences was also covered in a previous post on your Developer blog: Top-five Enterprise Blockchain Priorities for 2022.

In this post, we will attempt to define an NFT blockchain platform and discuss how to deliver blockchain NFT-based experiences. To illustrate this, we will be looking at Daml, Digital Asset’s core technology and the leading platform for building and running sophisticated, multi-party applications. Critically, Daml allows for interoperability between public and enterprise blockchains, as well as traditional databases—whether on-cloud or on-premise.

Options for creating blockchain NFT experiences

Creating experiences based on NFTs can be accomplished in two ways:

  1. By creating an NFT on a blockchain platform so that people can own it, and then by building a traditional software ecosystem around the NFT that checks ownership and provides various NFT experiences and privileges; or,

  2. by making NFTs smarter, so that we can embed an extensible business logic directly into the NFT. 

Using Daml, we’ll discuss how to create NFT-based experiences using the second option introduced above. The key benefit of option two here is that the entire process becomes much more transparent and accountable, as all of the actions can be tracked on the blockchain as smart contracts. We can still use the traditional format featuring a URL to a digital image along with transfer rights. Daml also allows the same blockchain NFT to reside on a permissioned enterprise blockchain, thus allowing brands tremendous flexibility in how they use the NFT to provide new experiences with this technology.

If you or your developer team haven’t yet installed Daml, you can install it here. Once installed, simply navigate to where you’d like to create the project, and create a new Daml smart contract project using the Daml assistant. 

Creating our blockchain NFT-based experience

For our purposes, we’ll use the example of a rock band issuing an NFT that also serves as a ticket to their concert. We’ll then add additional rights and obligations to the blockchain NFT so that new experiences can be created using the NFT in a transparent manner—directly on the blockchain. 

In the new project we’ve created, Daml allows us to simply create a basic NFT contract. In that contract, the data type called Party is what defines a unique party on the blockchain. The signatory keyword indicates that this token cannot be created without the consent of both the rock band and the fan. This is a unique advantage of Daml’s rights and obligations guarantee because it ensures that a token cannot be created without each of the signatories explicitly approving the transaction. These checks and balances are built into the platform, so that your enterprise developers don’t have to code any additional business logic. Since this smart contract has two signatories, it must be created only after approval from both parties.

Now that we have the core blockchain NFT or smart contract on the blockchain, we can start adding some rights and obligations to it. In our case, we’ll offer the fans an individually signed t-shirt (also an NFT) if they attend the next concert. The band can build a new concert using the rights created for them on the blockchain NFT. For that, Daml allows us to create a choice (a right) on the NFT smart contract. Importantly, only the band can create a concert—enforced here by a keyword called controller. So if any party other than the band tries to create a contract, the execution will fail. This is another example of the Daml rights and obligations model available out of the box.

As before, in this example, only the customer can buy a ticket—again enforced by the controller keyword in Daml. And when they do, they receive a concert pass. Since the concert pass is also a smart contract, once customers have a concert pass, then the band—also a controller on that smart contract—can now issue them a blockchain NFT for a T-shirt. The NFT for the T-shirt is, of course, also a smart contract allowing for future extensibility. The t-shirt NFT takes the URL for the digital image.

Now we have two NFTs on the blockchain—one to represent the ticket and one to represent the t-shirt. What we can do to build on the NFT experiences is limited only by our imagination. For example, this t-shirt NFT can be redeemed or further gifted.

Why Daml for blockchain NFT experiences?

As of the writing of this blog, multiple layer-one blockchains such as Solana, Avalanche, and Cardon have surfaced in addition to Ethereum, indicating a maturing of this space. So, when we create blockchain NFTs, we should keep portability of our smart contracts in mind; you shouldn’t have to tackle additional, complex technical initiatives in addition to running a blockchain NFT customer experience program. Second, the future of the decentralized finance (DeFi) and blockchain space hinges on interoperability. Daml allows blockchain NFT smart contracts to interoperate with each other when deployed on multiple blockchains. This is a huge advantage. Daml also runs on databases, so users can create an intra-enterprise NFT without having to work with a blockchain layer, all while keeping smart contracts interoperable with an external blockchain network.

Finally, it’s essential to reiterate that Daml focuses entirely on business logic. All the underlying plumbing and idiosyncrasies of the underlying ledger platform are abstracted away and hidden from your developers, making for extremely rapid business deployment and validation. 

The power of blockchain NFTs is beginning to emerge as a key tool for customer experiences. As ownership gives way to the need for providing experiences, it will be important to make the technical plumbing transparent to both users and developers in the enterprise. Interoperability and the flexibility of deploying NFTs on multiple blockchains is emerging as a critical success factor. Take a look at this article on tokenization and this one on asset tokenization that explore how blockchain NFTs will connect the world.

Daml provides an excellent foundation from which brands can build on what they need to do to grow their eminence: Creating the immersive, NFT-based customer experiences of the future.