Sample CorDapps

A listing of open-source CorDapps running on Corda v1.0+.


Third-party CorDapps

If you have an open-source CorDapp that you would like to feature here or on Explore, get in touch at [email protected].


CorDapps built by the Corda team

These samples are all Apache 2.0 licensed, so feel free to use them as the basis for your own CorDapps!

  • Yo! – A simple CorDapp that allows you to send Yo’s! to other Corda nodes
  • IOU – Models IOUs (I Owe yoUs) between Corda nodes (also in Java)
    • Source code in both Java and Kotlin
  • Obligations – A more complex version of the IOU CorDapp (also in Java)
    • Handles the transfer and settlement of obligations
    • Retains participant anonymity using confidential identities (i.e. anonymous public keys)
  • Negotiation – shows how multi-party negotiation is handled on the Corda ledger, in the absence of an API for user interaction


  • Crowdfunding – Use the observers feature to allow non-participants to track a crowdfunding campaign


  • FTP – Use attachments to drag-and-drop files between Corda nodes
  • Blacklist – Use an attachment to blacklist specific nodes from signing agreements


Confidential identities
  • Whistle Blower – Use confidential identities (i.e. anonymous public keys) to whistle-blow on other nodes anonymously


  • Prime Numbers Oracle – Use an oracle to attest to the prime-ness of integers in transaction
  • Options – Use an oracle to calculate the premium on call and put options


Scheduled activities
  • Heartbeat – Use scheduled states to cause your node to emit a heartbeat every second


Accessing external data
  • Flow HTTP – Make an HTTP request in a flow to retrieve data from GitHub
  • Flow DB Access – Access the node’s database in flows to store and read cryptocurrency values


Upgrading CorDapps


Alternate node web-servers
  • Spring Webserver – A node web-server that:
    • Provides generic REST endpoints for interacting with a node via RPC
    • Can be extended to work with specific CorDapps
  • Yo! CorDapp Spring Webserver – A node web-server that:
    • Provides REST endpoints for interacting with the Yo! CorDapp via RPC
    • Streams vault updates to the front-end using a web-socket


RPC clients
  • NodeInfo – A client for retrieving information from a running node
    • Useful for checking that a node is running and is accessible from another host via RPC
  • Ping-Pong – A client for pinging other nodes on the network to check connectivity