Mon. Jun 21st, 2021


Programmable money technology is regarded by many as the most valuable sector of the cryptocurrency market.[1] Furthermore, programmable money helps to deliver banks, currencies, and financial instruments with new utility, and its potential value is in the trillions of dollars. Although many people are interested in programmable money, fewer people know what it means.[2]

This post will explore the concept of programmable money by explaining if this is possible using smart contracts on blockchains.

Is Programmable Money Automated Payments

You may be wondering if it is programmable money if you click on make a payment on your bank’s online banking website and the bank’s computers help move the money. Contrary to popular belief, it is not programmable money because you instruct your bank to make a payment.

Programmable money technology is not only about the ability to write arbitrary code for moving money. Furthermore, it is not programmable money if it includes complex business logic and external data as the decision-making process. Nowadays, many businesses send payment instructions to banks using the computer programs running on the corporate servers.

You may be wondering if programmable money then has to do with automation of payments at the bank’s side instead of the customer’s side. Most banks are already performing client-instructed automated tasks with rudimentary. Banks can even allow you to upload code, run the code, and then use the code result as a payment instruction from you. However, this can create liability for the banks when the code goes wrong.

If Programmable Money Is Not Automated Payments, Then What?

In the above scenarios, a bank can hold back payment even when they got a payment instruction.[3] Regulators also require them not to tell customers why they even withheld the payment. In such cases, you are not assured that the payment is going to work in the end.

Opposite to the traditional payment methods, programmable money means that no intermediary or bank can stop the code’s instructions and it will be carried out once executed. As a customer, you’ll find the freedom to hold and control money outside the banking system.

A transaction like this can then be achieved using stable coins on public or permissioned ledger. This way, you can upload programs known as smart contracts that will indeed run. However, smart contracts will lead to creating instruction to the smart contract that defines the money. The smart contract that defines money may also decide not to make payment, for instance, when the payment instruction is made to a blacklisted account.

Programmable Money Is A Designer Money

The best way to describe programmable money is that it is designer money. It is money created by someone (an issuer) that will work in a certain way and has a specific constraint no matter the owner of the funds at any point in time.

Bank cannot do this because money in banks is usually different. For instance, money kept in JP Morgan is quite different from that at Citibank. JP Morgan’s scenario means there is a legal agreement that JP Morgan owes you money, while Citibank’s case means Citibank owes you some dollars.

Before the money in each bank can behave a certain way, both banks will need to use the same logic and constraints. This task is costly and complex because there is no ledger for more references while any transactions are made.

Problems Faced By Banks

  • The loans can be used for other items than what a borrower told their lender they would use the money for.
  • The funds meant for a specific purpose end up somewhere else.
  • Grants are used for paying for things not intended for.

Benefits Of Designer Money

Designer money helps to create money where the money has control logic built into it. Designer money can be created using a Smart Contract level. The Smart Contract helps to define:

  • The characteristics of the money like how many units there are, etc.
  • How the users can interact with the capital, such as making a payment, asking for balance, etc.

The designer can then code the constraints in the second part of the smart contract. This way, all the payment requests come with conditions no matter who is controlling the money. The benefit is that the money only goes to the intended destinations.

After the special purpose money has gotten to the destination, it can then be redeemed for general-purpose cash when needed. Developers can also create certain types of money that you can only send with additional data; for instance, the proof of payment supports an import or export. You can also put a constraint on the money flows or wallet balances.

Furthermore, designer money offers endless possibilities. The whole point of special-purpose funds is to reduce fungibility.