Smart contracts contain terms and conditions of agreements to facilitate the exchange of money, shares, or assets. Smart contracts are written using programming languages and are stored on a blockchain platform for execution when certain terms and conditions are met.