I’ve used Kashflow for our accounts for a few years now, both as a sole trader and then as a limited company. I have no complaints whatsoever about Kashflow, I have never experienced any down-time or errors and I would highly recommend it to others. I have recommended it to other businesses in the past too. I’ve decided to move to another package instead though which I’ll highlight in another post.
I wanted to write this post to highlight Kashflow’s API. It’s a pity, I didn’t learn about Kashflows API until after I decided to move on from it as I looked to see how I could export my data.
Kashflow have only a few options in the settings to export accounts, suppliers and payment activity but it doesn’t export everything I wanted though. They have a far more detailed set of items to delete if you decide to delete your data and I think their Export options should be as extensive their Delete options.
Thankfully the API is very extensive and well documented. They even double up on some functions, such as 2 ways to delete an Invoice, by InvoiceID or InvoiceNumber, to make sure you have a way to delete that’s more useful to you.
The one down side I noticed is that there is no way to delete a Supplier, which is funny since they have doubles elsewhere.
I set out to learn the API so that I could export Customers, Quotes, Invoices and Invoice Payments. I took a look on Github first to see if any developers had worked with the API before and I was lucky to find a Kashflow PHP wrapper built by a Steve Bates, he had already developed the hard part and all I needed to do is create a menu to view my data from my account, export the data as csv files and then delete the data from the system before closing my account.
For anyone that might to export their data for backup purposes, here is the code on Github: https://github.com/murrion/kashflow-export
Here’s a screenshot of the menu you’ll see if you’re using the kashflow-export code.