MyMoney 프로젝트

Publish : Update :

카테고리:

태그: , ,

MyMoney Web Version 프로젝트

개발 환경

VSCode Flutter Dart Firebase

프로젝트 목적

1. Web/Mobile 관련 새로운 언어와 개발 환경에 대해 공부 및 경험
- 주로 C++, C# 등으로 Windows Desktop App 개발 경력만 존재
- Python, Matlab은 통계(Linear Regression) 관련 업무와 Python은 Log 분석, 반복 작업 등 업무에 Script 수정 사용
- Web/Mobile 관련 프로그래밍 언어, 개발 환경(API, Cloud 플랫폼 등)에 대한 흥미로 인해 퇴사 전부터 제작 계획
2. 마이데이터 API 서비스 제공 업체의 소득/지출 산출 방식과 다른 별도 Logic 적용한 Application
2.1. 사용 중인 마이데이터 API 서비스
  - 뱅크샐러드(2017년부터 사용)
  - 토스
  - 현대카드
  - 우리은행
  - 카카오페이
  - 네이버페이 등등

2.2. 문제점
  2.2.1. 계좌이체 관련 수입/지출 통계 관련
    - 쓰는 은행계좌(적금 포함 5개), 증권사(4개), 카드사(3개) 모두 연결했음에도 불구하고 모두 수입/지출이 다름
    - 주로 토스, 뱅크샐러드 사용
    - 토스는 본인 계좌간의 입출금을 수입 또는 지출로 인식하지 않음
    - 뱅크샐러드는 계좌이체를 수입/지출로 인식 On/Off 기능 존재
      + 한 번 On 했다가 복구 불가 상태. 다시 Off로 변경
    - 유일하게 뱅크샐러드만 1년 단위로 거래내역 Excel로 특정 이메일로 암호화된 Excel 파일 전송 가능
      + 현재도 이 기능으로 업데이트 중
      + 단, 증권사 거래내역은 미포함

  2.2.2. 신용카드 할인 혜택 미적용
    - 어느 마이데이터 API 서비스에서 할인내역(청구할인, 주유할인, 마일리지 사용 등)이 아닌 승인내역을 지출로 인식

프로젝트 계획

1. OpenBank API 사용 가능 여부
- 퇴사 후 금융결제원에 바로 문의
- 개인/법인이든 영리/비영리든 조회시 수수료 발생. 현재 포기
- 마이데이트 API는 법인만 되는 것으로 알아 포기
2. Web Application 제작 관련 샘플 프로젝트
- MyMoney Web Application 개발을 위한 연습용 프로젝트
- Flask와 MySQL Local Version과 Django와 Firebase 사용한 Web Application 제작
3. Flutter CrossPlatform 개발
Frontend / Backend 모두 Dart 언어로 구현
Firebase Emulator 사용

3.1. 개발 관련 준비
  - 뱅크샐러드 Export Excel 파일에 증권사 거래내역이 미포함
  - 신용카드 할인 혜택 미적용 문제 해결
  - 위 두 가지 해결 위해 모든 증권사, 신용카드 거래명세서 Gmail로 수령으로 변경
  - 이전 거래명세서의 경우, 일부를 제외하고 해당 회사에 문의하여 거래내역 확보 완료
  - 은행계좌를 명세서 이메일 수령 방법이 없는 은행이 있어 기존방식대로 뱅크샐러드 Export Excel 파일 사용

3.2. 기본 Backend Logic 구현
  - Firebase Realtime Database Structure 및 Model Class 생성
  - MS-SQL Data를 JSON 파일 생성 
  - MS-SQL JSON파일을 Model Class Convert Logic
  - Firebase Database에 Import/Read Logic

3.3. 기본 UI 제작
- 수입/지출 통계 차트
- 거래내역 테이블

3.3. 추가 Backend Logic 구현
- Gmail의 BankSalad와 Local에 모아둔 Excel Parsing Logic
- Gmail의 카드사/증권사별 명세서 파일(Secured HTML, PDF) Parsing Logic 
- 신용카드 할인 내역 적용 Logic
- 증권사 거래내역 추가 Logic
- 은행 계좌이체 관련 Logic
- 주식 관련 실제 수익/손실 통계 Logic

3.4. 추가 UI 제작
  - 주식/공모주 수익/손실 통계
  - 카테고리 추가/수정/삭제 기능