Full Cycle Accounting with Smart Contracts

Chi Kei Chan
4 min readJul 26, 2017


My name is Jacky Chan. I have spent over 3 years as an accountant in the SF Bay Area. In that time, I trained over 20 junior accountants, helped modernize the accounting processes of a mid-sized accounting firm, and oversaw financial reporting for over 50 businesses in the food industry with annual revenue ranging from 2 to 15 million dollars. I’m currently a software engineer at Uber.

Account reconciliations are essential to ensure the accuracy of financial statements, which can prevent fraud and drive better business decisions. However, over half of finance leaders are still using spreadsheets. Spreadsheets are extremely labor-intensive, error-prone, and can create late balance changes. In this blog post, I’ll use accounts payable (AP) as a way to demonstrate how smart contracts can improve the efficiency of accounting.

How does AP work now?

Typical AP workflow for buyers and sellers

Accounts Payable is one of the most basic building blocks of running a business. Outside of payroll, the accounts payable process involves nearly all other payments the company has to make. Typically, this process involves manual labor on both sides: phone calls with providers answering why their invoices haven’t been paid, asking for duplicate copies, solving discrepancies, and recording invoices. These manual processes are prone to human error. Since accounting records are typically reconciled only once a month, discrepancies tend to accumulate and make month-end closing inefficient.

How could AP work with Smart Contracts?

Smart contracts are computer protocols intended to facilitate, verify, or enforce the negotiation or performance of a contract. We can write code that represents rules for what journal entries must be recorded at a given time during the AP cycle. For example, smart contracts can respond to events such as receipt of shipment and payments, and automatically record a corresponding journal entry on both parties’ records. On the blockchain, no one party can modify, delete or append to a record without consensus from others on the network. This level of transparency helps reduce fraud and errors, as well as the need for the parties to contact each other to view policy data, payment data, and the status of policies.

Here is how smart contracts could help improve the efficiency of AP:

When a purchase order is submitted

When a buyer submits a purchase order to the seller, a smart contract containing terms of the purchase agreement is generated on the blockchain. If the seller rejects the order, the smart contract will be automatically destroyed, and the record will be voided. If the seller accepts the order, the smart contract will then update the record for both parties, creating an audit trail.

When a buyer receives goods

When the buyer confirms receipt of the goods, an event is triggered on the blockchain, and the smart contract automatically executes and updates journal entries for both sides. Because the journal entries are instrumented by code inside a smart contract, we will know for certain when and how a transaction will be booked to ensure both parties’ records are always in sync.

When a seller receives payment

When the seller confirms receipt of payment, an event is triggered in the blockchain resolving the smart contract and updating records for both sides. This event will only be triggered if the buyer agrees that a payment was sent, and the seller agrees that a payment was received. Once it is recorded into the blockchain, it is impossible to alter the record, making it perfect for maintaining an audit trail.

Automated Accounting

By transacting through a shared accounting protocol over blockchain, previously incompatible accounting software communicate in cryptographically secure way. This common protocol simplifies the traditional AP cycle by automating much of the work through technology. A foundational benefit that comes with automation is productivity. Based on research done by Blackline, accountants spend about half of their time on manual reconciliation. By automating bookkeeping and reconciliation, we can have real-time access to authentic and accurate financial information. Accounting and finance firms can use this to make better business decisions.