SPENDOPS DASHBOARD

キャッシュレス分析
ダッシュボード

PayPayやカードの利用明細から支出を分かりやすく振り返る

SpendOps Dashboardの紹介動画

SpendOps Dashboardは、PayPay、JCB、三井住友VISAの明細をまとめて確認できる支出分析ダッシュボードです。

個人開発企画書 / PROPOSAL

企画書

新しいタブで開く

PDFが表示されない場合は、企画書を新しいタブで開いてください。

1.

開発理由

AWSを活用している企業へのアピールとして、AWSのサービスを基盤に開発・運用できることを示すために制作しました。

キャッシュレス決済を使う機会が増える一方で、PayPayやクレジットカードなど、支払い方法ごとに明細が分かれています。そのため、「何に、どれくらい使っているのか」をまとめて把握しにくいと感じました。

そこで、複数の決済サービスから出力したCSVをまとめて読み込み、月別・カテゴリ別に支出を可視化するダッシュボードを開発しました。自分の過去や匿名化された利用者平均と比較し、月ごとの支出の変化も確認できます。

2.

ペルソナ

想定ユーザー

20代・一人暮らしの会社員

将来のために貯金をしたいと考えているものの、複数のキャッシュレス決済を利用しており、毎月「なぜかお金が残らない」と感じている。

自分の支出を振り返り、改善点が分かれば行動へ移せる人を想定しています。

3.

課題設定

01

使いすぎた項目が分からない

毎月お金が残らないと感じても、何に使いすぎているのかを明細だけで判断するのは困難です。

02

決済ごとに履歴が分かれる

PayPayとカードの明細が別々に出力され、月全体の支出傾向を把握しにくい状態です。

03

生明細は共有できない

他人の利用先や金額をそのまま共有すると、プライバシー上の問題が生じます。

4.

企画設定

PayPay・JCB・三井住友VISAのCSVを共通形式へ変換する

月別・カテゴリ別・支払い方法別に支出を集計する

自分の過去や匿名化された利用者平均との差を比較する

他人の生明細は見せず、匿名化した集計値だけを使う

完全自動化より、CSVから正確に取得できる範囲を優先する

5.

企画書に対する達成度

実装済み主要7項目

CSV取込、正規化、集計、比較、認証、保存、データ保護を実装しています。

企画書で設定した内容状態現在の実装内容
Cognitoでログインし、利用者を分ける達成usersとadminsのグループを分離
3種類のCSVをアップロードする達成PayPay・JCB・三井住友VISAに対応
CSVを共通形式へ正規化する達成文字コードと列構成を判定して正規化
月別・カテゴリ別に集計する達成月別・直近12か月・全期間を表示
本人と匿名化された平均を比較する達成利用者平均、自分の過去、参考値を切替
CSV原本と他人の生明細を保存しない達成必要最小限の正規化済みデータだけを送信
6.

技術選定とAWS構成

必要な処理だけをAWSへ渡す

CSV原本はブラウザー内で解析し、AWSには画面復元と集計に必要な正規化済みデータだけを送ります。

  • Amazon Cognitoで利用者を認証
  • Lambdaで入力検証と集計を実行
  • DynamoDBへ利用者単位で保存
  • Terraformで同じ構成を再構築
7.

製作物に対する工夫

CSV形式の違いに対応

文字コードや列構成を判定し、共通形式へ正規化します。

CSV原本をAWSへ送らない

原本はブラウザー内で解析し、必要なデータだけを送ります。

Cognitoによる認証

利用者を認証し、本人のデータだけを取得できる境界を設けています。

匿名化された比較分析

他利用者の生明細を表示せず、条件を満たす月別集計だけを比較します。

本人ごとの分類学習

カテゴリ修正を、次回以降も本人専用の分類として反映します。

Terraformによる再構築性

AWS環境をコードで管理し、同じ構成を再現できます。

SpendOps Dashboard AWS構成図

SpendOps DashboardのAWS構成図の拡大表示