Creating simple and beautiful software takes more time, innovation and effort than complicated offerings. Every functionality needs to be carefully designed with a user’s workflow and end purpose in mind.
It’s this idea which is at the core of Xero, and something that has made the Cloud accounting landscape an exciting and highly competitive one.
Creating a global accounting platform takes many years. Essentially, you have to write the complexity of SAP, but designed well to make it simple to use for small business owners who already are stretched thin.
I started my career as an auditor, and then a junior IT Consultant at accounting giant Arthur Young, going through the merger that become Ernst and Young and later EY. I was lucky that back in the early '90s, Arthur Young was a hotbed for innovation in information engineering and James Martin disciples. I had to implement many financial systems.
Later, working closely with Microsoft I founded a software development practice within EY, eventually peeling out into our own firm.
I loved accounting and programming, and always had a dream of building the world’s best accounting engine. It was actually back at high school where I first learned accounting and programming. My favorite subjects. The mathematical beauty and elegance of the double entry accounting system had an appeal to me. Programming unlocked your brain to build machines with the ultimate scale.
As our consulting and development practice grew, I became a Microsoft insider invited frequently to Redmond to beta test some of the company’s early web based programming tools. It was around this time that I took a couple of weeks to build a relational double entry accounting system in my home office, and it felt so good.
A major discovery of doing accounting on the web was that everything was clickable. Reporting and the task user interface blurred. Every number you could click into. It felt magical.
The Start of Something Big
I wasn’t ready to start Xero at that time and parked the idea for a couple of years while I built and sold a successful email archiving startup, giving me the funds to do Xero properly. Running my own business and selling it reinforced how much traditional accounting software was so clunky. How could millions of small business owners be so poorly served?
As soon as my money arrived from the sale of AfterMail, the founding Xero team came together and did some real research and development. We were going to build a global, double entry, accounting product and we got our amazing talented team to learn about how debits=credits, the accounting equation and the atomic magic at the heart of journals.
On Day 1, our original developer came back from a business trip saying, “It’s crazy that you need to decide whether to use cash or accrual accounting. Let’s capture both cash and accrual and just report on either.”
And with that, we invented the first multi-perspective general ledger – with cash and accrual ledgers right there–and we can report on either. That’s what databases do.
Our next big thing, probably about six months in, was that many of our early customers were exporters or buying products overseas. They wanted multi-currency. The existing products I used had simply hacked multi-currency into their products and it broke the double entry model.
We could not dirty our beautiful engine with such hacks, so we ended up rewriting our general ledger engine with currency modeled directly into the core. We have live currency feeds arriving every hour and our design allowed us to calculate unrealized gains and losses on the fly, in both the profit and loss account and balance sheet. Even large enterprise products had not solved that problem. We knew then we had the best accounting engine on the planet.
Our next big challenge was how to deal with the accounting productivity issue that every small business has a different chart of accounts. In fact, looking in Xero, we have 10 million unique account names. It’s the wild west out there. It means accountants need to write a custom report for each customer – a massive barrier to productivity – and that the data was not cleaned sufficiently for eventual benchmarking.
Again, relational databases gave us the tools to solve this problem. Around five years ago we started a large program of work to create report codes – the accounting classifications that drive financial reporting. Things like sales, travel, miscellaneous.
As the accountant works with their customers each month, they link the client’s chart of accounts items to report codes. We then built report templates, using report codes to define reporting at a practice level.
These templates are available across clients as long as the chart of accounts is linked to report codes we deliver cross practice reporting. Where it would take hours hand coding each client’s reports, if coded correctly, financial reports could be done in minutes. This is a productivity game changer for accountants.
The Xero Report writer brings this to life. Doing amazing gymnastics inside a browser, its ease of use belies its powerful features such as custom columns. The power of crystal reports specific for accountants.
As we look back over the last 10 years, we are thrilled with our ability to address some of the biggest problems with accounting. This platform allows us to look at the next big challenges – with confidence we can address those to.
What are these challenges?
Before I get to that, I want to take a brief detour to Machine Learning and AI. With the general ledger in the Cloud, where hundreds of thousands of businesses transactions are added each day, we suddenly have massive insights into not just the size and scale of the small business market but how small businesses use accounting.
In 2015, we added an awesome feature called "Find and Recode." It enables accountants and bookkeepers to search for a group of transactions and quickly recode all of them at once. It’s a game changer for bookkeepers, as it reduces the risk of fixed-price bookkeeping services. A books rescue now was easy and cost effective.
When we looked at the data, we could see more than 3,000,000 re-coded transactions and clear patterns of errors made by small business owners that their advisors had to fix. Surprise, when coding invoices to the revenue accountants most people just selected the first account – sales.
When analyzing general expenses re-codes we found a disturbing number moved from invoices – they had coded a cost in as revenue. Very poor software design on our part that we never knew. The insights from the data told a strong story.
Using this data and trying a number of Machine Learning models on our vast dataset – there were more than $1 trillion of transactions processed during 2016 alone – we established that after about four invoices, we got a very high hit rate on selecting the right account code for a transaction. For our daily bank reconciliation – we process over a half billion lines a year – we could correctly code nine out of 10 transactions.
What we discovered is that:
- Small businesses are terrible at coding transactions
- We can code transactions automatically – and if we are wrong, it’s easy to fix and learn from the experience
- There is no loss of accounting fidelity for accounting professionals who want to see the coded transactions
When we started this process we didn’t dream to think that we could eliminate the biggest problem of accounting (that small businesses are bad at it).
From the beauty of Double Entry accounting to the magic of Machine Learning.
Haven't we come a long way.
You can see Drury's "Xerocon South 2016 keynote presentation: "Accounting 2020 – A Vision for Where Our Industry is Going," here.
Rod Drury is the founder and CEO of Xero, the leading international Cloud accounting solution for small business.