Luca Labs Expenses

Raised money from the Norway's largest financial services group

Headquarters: Oslo, Norway

Industry: FinTech

Product: mobile app

The scope of our work: front-end

Solutions: Flutter

Web site: https://www.lucalabs.com/expenses/

Luca Labs Expenses is a cool app to get rid of time-consuming accounting tasks within companies. Luca Labs was created by former McKinsey consultants as a company that focuses on accounting documents with the help of AI.

Luca Labs Expenses is an app for the management of working expenses. When the employee has certain expenses that should be reimbursed by the employer, the employee can just use the app to take a photo of the receipt and send it to the employer. In the same vein, the employee can keep track of the payment status or look over the paid receipts.

client’s goals

The client had an old app with the same functionality but had major problems with functionality because it had to keep track of two software: IOS and Android. Our goal was to create an app that would work with an existing API, look good, and would be easy to maintain.

our solutions

TOP CHALLENGES

Since Flutter is a rather young technology, it functions very efficiently. However, sometimes it’s challenging to find the right solutions, and occasionally we have to work with volatile versions of libraries.

1. Changing the app’s server

During development and testing, we used several versions of the server and Firebase (production, stage, development). One of the tasks was to make the server change from the application for easier testing.

The trick: even though the Firebase library itself supports this switching, some of the libraries that Firebase uses only work in default.

Our solution: we made the forks of these libraries on the Github and made PR with changes that would allow the use of default within Firebase.

2. Real-time data updates

Our solution: to use Firebase

The app uses Firebase as a data store, meaning that the app sends a request to the server to change or add data, and the server saves them in its database and duplicates them in Firebase. This allows you to use the real-time data updating functionality in the default Firebase libraries.

If users change something through the web interface, the changes are visible at API at the same time without additional server requests. The same goes if two mobile queues are used, or if data is changed by the administrator.

USER FLOW
  • The user can either sign in by using Google, Facebook or their own email. Then the user needs to verify their email.
  • The user has the ability to take a photo of the receipt through the app or upload an already-existing one. The system allows the user to add specifications, like a merchant profile, amount, currency, category and comments.
  • Then the user can send it to their employer. Also, the user has always the option of viewing the information in PDF form.

project stages

1. Initial Stage

Localization and internationalization

Enhancement of login and log out capabilities, and display of user information

Adding Gitlab CI to run tests and analysis

Adding the ability to change firebase env after app start, and to test env for test purposes

2. Improved MVP

“Report” overview, deleting, updating

“Receipt” overview, deleting, updating

Added ability to automate the build of iOS and Android for QA

Update Flutter to stable 1.0

3. Private Beta

Added code to work with icons

Added the ability to take a picture

“Report” and “Receipt” creating

Reworked and improved code according to the existing architecture

4. Public Beta

Email verification and onboarding screen added

“Diems” entity added

Adding the ability to overview PDF

Autotests added, and phase of full QA

TECHNOLOGIES

Client-side
Dart
Flutter
Tools (hosting, monitoring etc.)
Android Studio
GitLab
Jira
Xcode
Integrations
Crashlytics
Firebase

Timeline

November 2018 March 2019

Team

Mobile app developer| Back-end developer| QA
Project Results

By creating an app that is user-friendly and easy to maintain, we helped the client keep tabs on the work expenses of employees and save data to support those expenses.

The company has won many awards:

  • In 2017, Luca Labs was awarded as being the most exciting startup at Fintech Factory.
  • In 2018 Luca Labs raised an undisclosed amount on the seed stage from DNB, Norway’s largest financial services group.

Contact the team, start like a rocket!