Napkin — Expense Manager with SMS Scanner

Lioland Software
4 min readDec 23, 2020

Introduction

Napkin is a simple Expense tracker that can read your transactional SMS messages sent by Banks to auto log daily expenses and show them on Dashboards to visualize reports with categorisations that can be tagged by Users. Users can also define multiple templates to read different types of transactional SMS messages.

Here’s a quick 2 minute demo of the App.

User Guide

Open up Template Editor from Settings > SMS Templates screen.

Provide a template name and select a sample SMS from the Message thread from which you want to extract expenses. e.g. if you are receiving SMS messages from your bank when a credit card transaction is made, it probably contains the location of the expense, amount and the currency code. For this, a template can be created to automatically capture such expenses.

Each template has to identify 3 mandatory attributes. You can long press to highlight these parts of the message and use the coloured button to label them.

Shop: Location of the transaction. In case the location is not obvious, you may select some text that would give you the closest context. You can later make manual modifications to captured expenses.

Currency: Every transaction typically mentions the currency code on which it was made. This is a 3 letter word such as USD, AUD, INR adhering to an international standard. Expenses that are from foreign currencies, will be automatically converted to local prices using recent exchange rates. For this Internet connection is required.

Price: Transaction amount. When highlighting the Price, please avoid unnecessary trailing characters. e.g. 1,234.00 is okay but 1,234.00; is not. So end the highlight before the semicolon(;) in this example.

Dynamic: Use dynamic button to mark texts that can be different from one SMS to another other than Shop, Currency, Price parts. e.g. texts containing timestamps, account balances etc could make your template less general. So use Dynamic button to ignore them.

There can be multiple templates if you have different SMS messages coming from the bank for different transaction types such as credit card, debit card, withdrawal etc. Each type could have one template.

Once the templates are setup, go to the expenses list and pull down to refresh. This will start processing messages from the last bookmarked position. If you are running for the first time and you have a long history of SMS, this might take several minutes. If the screen freezes during this processing, please be patient as it will be back to normal once the SMS are processed and thereafter this will be fairly instant.

Tap on the icon on left to categorize the expenses.

Tap on the description area to edit the expense.

You can also create new expenses using the floating add button.

Recorded expenses will then appear in Dashboard reports. You can view reports up to 8 months to the past.

Clicking on Monthly columns will update the category breakdown.

Future Roadmap

  • Ability to edit categories
  • More dashboard reporting with linkage to individual expenses
  • Ability to download expenses reports for backup purpose

Privacy Policy

In order to auto generate expense reports from transactional SMS messages, Napkin Application require READ ACCESS to user’s SMS Inbox.

  • This data is completely stored within the local storage(SqlLite DB) of the Phone and never leaves the user’s device.
  • Application does not have a background process to keep “listening” to SMS messages. Instead, it processes messages only when user intentionally triggers the scanning process using the application UI.
  • This application does not use any usage tracking analytics service such as Google Analytics.
  • This application connects to a remote API by https://fixer.io to fetch exchange rates to convert currencies. No personal data is transferred during this interactions.

--

--