Я устал не знать, куда уходят мои деньги

Что такое Овомида?

Owomida - это небольшая служба, которую я создал для отслеживания моих личных финансов в Нигерии. Owomida основана на существующих инструментах, таких как Mint, Ynab и других платформах бюджетирования. Фраза Owo mi da? Yoruba означает "Где мои деньги?"

Зачем мне это нужно?

С тех пор, как я вернулся в Лагос, я с трудом мог понять, куда именно уходят мои деньги. Удивительно, но с этой проблемой сталкиваюсь не я один. Я разговаривал с местными жителями, эмигрантами и отдыхающими. Часто я слышал, что они могут потратить xxxx найра в неделю, месяц или во время своего пребывания здесь. Каким-то образом эта заложенная в бюджет сумма исчезает вдвое или даже меньше. Теперь возможно, что все эти люди и я были ужасны при составлении бюджета и отслеживании наших финансов: я с радостью это признаю.

Я не думаю, что проблема так проста. Я заметил, что наша экосистема не предназначена для того, чтобы помогать людям экономить. Возьмем, к примеру, наши банковские приложения. Обратите внимание, что я исследовал множество приложений, таких как Sterling, Union bank, UBA и другие. Я использую FCMB, GTB и Access. И ни одно из этих приложений не показывает мне, сколько денег я потратил за определенный период времени. Они показывают мне мой текущий баланс, и это здорово. Но нет текстового или визуального обзора того, как я тратил свои деньги. Вдобавок ко всему, ни один из этих банков не имеет готовых открытых API (о которых я знаю), так что любой аутентифицированный пользователь может легко получить доступ к своим данным и проанализировать их.

Я попробовал несколько других приложений для составления бюджета, созданных для нигерийского рынка, и был очень разочарован. Моя самая большая проблема заключалась в том, что эти приложения были ориентированы на ссуды и кредиты. В то время как все, что мне нужно, это приложение Mint для Нигерии.

Прежде чем я сдался, я попробовал использовать таблицы Google. Теперь, если вы хорошо разбираетесь в таблицах Google, это, вероятно, будет лучшей альтернативой. Однако, как и у большинства вещей в этой стране, был еще один блокиратор: банковские данные. Все банки, которые я использую, были достаточно любезны, чтобы разрешить мне экспортировать мои финансовые данные в файл xls. Проблема заключалась в том, что мне приходилось выполнять много манипуляций с данными: все точки данных были буквально помещены в одну ячейку, а не в столбец для дат, столбец для сумм, название банка и т. Д.

Итак, после всего этого безумия и стресса я решил, что мне нужно остановиться и построить что-нибудь для себя: Овомиду.

Что оно делает?

Овомида - странный функциональный прототип. Все, что он делает прямо сейчас, - это показывает, сколько денег я потратил за определенный период времени: сегодня, 7 дней и 30 дней. Это позволяет мне видеть общую сумму потраченных денег или выбирать конкретную учетную запись. Оттуда я могу перейти ко всем или к одной учетной записи и просмотреть более подробную информацию о своих транзакциях. Нет категоризации транзакций или бюджетирования… пока. Ознакомьтесь с быстрой и грязной проверкой концепции.

Мне нужно было найти способ обойти банки и получить доступ к моим финансовым данным: без необходимости постоянно экспортировать свои отчеты. У банков есть отличная функция, где вы можете получать текстовые и электронные уведомления, когда деньги уходят или поступают на ваш счет. Мне нужно было найти способ анализировать сообщения электронной почты или текстовые оповещения. К счастью, обе эти проблемы решили люди умнее меня. Я нашел плагин IFTTT, который автоматически считывает все мои тексты и аккуратно помещает их в электронную таблицу Google по моему выбору. Приведенная ниже общая разбивка показывает, как мне удалось получить свои банковские данные:

  1. IFTTT читает все текстовые сообщения и экспортирует их в Google Таблицы.
  2. Таблицы Google позволяют создавать собственные сценарии. После добавления текстовых данных запускается скрипт, который проверяет, взят ли текст из банка.
  3. При обнаружении банковских данных скрипт выполняет ряд операций с данными: удаляет пробелы, лишние слова и подготавливает эти данные в формате, который будет удобен для приема в базе данных.
  4. Редактор скриптов Google Sheets экспортирует отформатированные данные в базу данных (MongoDB)
  5. VueJS - это фреймворк, используемый для Owomida. У него есть каталог клиента и сервера. Сервер подключается к MongoDB, а клиент подключается к серверу. Теперь у нас есть визуальный доступ ко всем данным транзакций в режиме реального времени.
  6. И клиентский, и серверный код размещены на Heroku (болезненная статья, которую я еще не написал)

Процесс и эволюция

Изначально все, что я хотел сделать, это воссоздать приложение Mint. Затем я вспомнил, что сам кодирую весь стек, и мне нужно его упростить. Так что я хочу пройти множество итераций. Некоторыми из последних я поделился с друзьями и семьей для обратной связи. Я помню, как думал, что все, что я хотел на странице, это «сколько денег я потратил сегодня». Оттуда он превратился в «сколько денег я потратил на каждом счете сегодня».

Он быстро превратился в крупную финансовую платформу: отображение текущего баланса с каждого счета, еженедельных тенденций, процентного увеличения или уменьшения средств и т. Д. Это стало ошеломляющим. Поэтому я упростил и решил, что мне нужны четыре основных компонента: выплаты (деньги на выходе), доход (деньги на входе), выбор счета и выбор даты. С этими четырьмя я мог получить четкое представление о том, сколько и куда уходили мои деньги.

Заключение и следующие шаги

Со временем Овомида позволит мне:

  1. Просмотр фактических остатков на счетах
  2. Редактируйте отдельные транзакции и сохраняйте фотографии / квитанции
  3. Создание / добавление и редактирование банковских счетов
  4. Вручную классифицируйте транзакции на основе деталей описания
  5. Автоматически классифицируйте транзакции
  6. Создавайте бюджеты и получайте уведомления о приближении или превышении бюджета.

К счастью, единственный человек, которому требуется это приложение, - это я, поэтому я продолжу терпеливо настраивать и улучшать его. Я не разработчик, поэтому манипулирование данными, обучение использованию VueJs и развертывание на heroku были самой сложной частью этого опыта. Owomida запущена и работает, но у меня еще нет встроенных подстраниц, ха-ха: я все еще изучаю маршрутизацию, правильное структурирование API и управление состоянием. Не стесняйтесь обращаться к нам, если у вас есть какие-либо вопросы. Буду продолжать писать и делиться по мере моего прогресса, спасибо!