For a lot of professionals, summer brings opportunities to travel to conferences; with professional travel comes the pain of expense reports. From experience, I can tell you that as much of a pain as it is to keep track of things as you go, sorting through a pile of receipts and dealing with them later is even more painful! So this month, I'll be showing you a great open source app for Android and iOS that helps you track expenses as you go and even put together your expense report at the end of the trip.
The app is called Smart Receipts, it's licensed AGPL 3.0, and the source code is available on GitHub for Android and iOS.
Smart Receipts' business model sets it apart
One of the most interesting things about Smart Receipts to me is its business model. You can download the application's base version for free via your OS's application store, and they also sell a Plus version ($5.99 on Android; you may also upgrade from within the application, of course). Unusual for such a scheme in my experience, the Plus code is included in the repository. You could, if you wanted to, hack on it a bit to customize things and create your own copy of Smart Receipts Plus. The difference between the two is not large—the Plus version is ad-free and provides automatic cloud backups (currently only on Android), automatic processing of exchange rate conversions, and customizable report footers.
But this is not where the "special sauce" lies.
Where I think Smart Receipts sets itself apart is as a services provider around a piece of open software: It sells white-label customization services on its website, offering customization of icons, settings, report layouts, and other features. Another service it offers is automatic backup to its own cloud. While I don't think that this is something that could be the bread-and-butter for a large company, for a small organization like Smart Receipts, it could do well, if the app is useful and feature-rich.
Which it is, of course.
A quick tour of Smart Receipts
Developer Will Baumann has created an easy-to-understand application for tracking receipts and mileage to help with expense report preparation. I loaded the Android version on my phone and the iOS app on my husband's and took them for a quick test drive. Other than very minor layout differences, they function identically, as far as I tested.
Everything is structured around a Report, presumably an expense report for a trip. You could use this for monthly reports as well if that meets your needs. In the new report creation screen, you can give your report a duration and add comments. Once you've created a report, you can add receipts, driving distance, and other expenses to it.
The receipt creation screen lets you take a photo of your original receipt and organize receipts by customizable categories. Enter the receipt total, category, and vendor information, and you are done. You can include comments such as who you bought dinner for, required by most organizations and devilishly hard to sort out later. For driving reimbursement, it couldn't be any easier. Just enter your company's standard rate, the distance you drove, and your destination, and you're done. You can enter comments, of course, like for a case number or other necessary information.
When you're ready to turn in your report, you can send it as a PDF, a CSV, or a collection of JPG images of your receipts, each with the details required for your report. For a CSV, you can easily customize the available fields in the settings, and two different PDF formats are included. You can create multiple, overlapping reports, so a consultant could easily use this application to track expenses for multiple clients simultaneously. There is a dizzying array of settings in the application that let you do substantial customization to its behavior, including multiple currencies, report formatting, default behaviors, and much more.
A final thought
In The Cathedral and the Bazaar, Eric S. Raymond wrote, "Every good work of software starts by scratching a developer's personal itch." That is, they encountered some problem and responded with, "Hey, I could fix that!" I get the sense that Smart Receipts is such a work; Baumann (or someone he knows) got tired of the hassle of working on expense reports, and that led to this application. Is it the next Really Big Thing? Obviously not, but it's a great app that solves a specific problem very, very well. If this is something you wrestle with in your own career, give Smart Receipts a try!