金融機関における取引明細を自動取得する

金融機関における取引明細を自動取得する方法。しかも,無料か安価で,かつ,得られたデータを自分でさらに自動処理できる,という条件付きで。

もちろんこれは自分が個人事業主であるため,会計処理,特に毎年の確定申告(青色申告)する上で,作業量を抑えるために激しく望ましいのがこれを調べようと思ったきっかけ。しかし家計を管理するといった目的にも使えよう。 “銀行口座への入金の通知を自動で受ける” で考えたような,顧客からの入金にタイムリーに反応する,といった目的にももちろん使えることを期待している。

自動取り込みの方法

データ取り込みは,スクレイピングとAPI利用の2つの方法で行われる。APIが提供されているのならもちろんそれを利用するようになっているのがベスト。スクレイピングはその動作原理からして,対象ウェブサイトのちょっとした画面変更でいつ使えなくなってもおかしくない。

また,APIであれば,まっとうにデザインされていれば権限を細かく指定できる…ように常識的には設計する。取引明細を見ることはできても,その他振り込み処理などは許さない,といったように。一方スクレイピングの場合,スクレイパーは与えられた対象ウェブサイトへのログイン情報で,基本人間のユーザができることは原理的に全て無制限にできる悪用されてしまうと全く洒落にならない結果になる

自動取得のプロセスをローカルに行うか,クラウドで行うか,という区別もある。一般にアプリ/サービスは,どの端末からもアクセスできる,というメリットが通常生まれるクラウド型が好まれるが,特にスクレイピングをさせる場合,ログイン情報がクラウド上のスクレイパーに保存されることになるのが大いなる不安材料。もっとも,多くの人が例えばGoogleのパスワードマネジャーに各種サイトのログイン情報を記憶させているのと,本質的に変わらないといってしまえばその通りではあるが…。それでも,ローカルにスクレーピングさせるほうが気分的にはまし。自分の場合はそういう問題はないが,財務状況全体がリークしてしまわないように極力ローカルで,という判断を下す場合もあろう。

取り引き明細の取得対象

取引明細が欲しいのは主に銀行とクレジットカードだが,税金や公共料金までクレジットカードでの支払いが可能になってきているので,実は日本国内での事業に関する支払いだけに関していえばクレジットカードの取引明細が自動で得られたらそれだけで十分な段階に達しているのかもしれない。事業的には実際には入金もあれば,為替操作を伴う海外での出金もあるのでそう簡単には行かないのだが(特に後者は確定申告ソフト程度ではそもそも扱うことを想定していないようだ)。

事業主としてではなく,純粋な個人として支出を家計簿的に管理したい場合は,スーパーやコンビニ等での出費も記録したいだろう。コンビニでは早くからクレカ払いに対応していたと思うが,スーパーでの支払いでも最近はクレカ対応が普及した。以前は現金のみだったマンダイや業務スーパーまで,少なくとも自分が使う店舗ではクレジットカードに対応したのには驚いている。これら店舗でもクレジットカードを利用すれば,やはりクレジットカードでの取引明細が得られれば目的が達成できることになる。

ただ,コンビニなどではテキパキと支払いをしたい。そういう種類の店だからだ。傍証程度の意味しかないが “現金・カード・QR・NFCタッチ 決済が一番早いのはどれ? お店のデータで検証【中小店舗のキャッシュレス対応】-Impress Watch” にある実験データは興味深く,サインや暗証番号を要求するクレジットカード決済(タッチ決済ではなく)が決済にもっとも時間がかかり,現金を含めた他の方法は大差ない団子状態,という結果。想像通り現金支払いの場合所要時間に大きく幅があることもこの記事で述べられている。要は,現金と(通常の)クレジットカード決済以外であればテキパキ支払いが完了する,ということのよう。

自分の場合,〇〇 Payの類にはどうも苦手意識が強く今まで全く使用していない。三井住友 (SMBC) のVisaクレジットカードが2022年3月からGoogle PayでのVisaタッチ決済に対応するそうで,私が知る限りこれが日本でGoogle Payでのタッチ決済に対応する初めてのクレジットカードになる。コンビニ3社(セブンイレブン,ファミマ,ローソン)・マクドナルドで「Visaのタッチ決済」を利用するといつでもポイント最大5%還元,というのは時限付きキャンペーンではないという点で悪くない。○○Payの時限つきキャンペーンではこれ以上の好条件はあろうが,あまり外出しない自分としてはそれらは手間が見合わない。

さらに,エポスカードがVisaタッチによるGoogle Payに対応すると発表された。自分の知る限りSMBC Visaクレジットカードに続いて国内2例目。自分のエポスカード自身は古いタイプでVisaタッチに対応してないようなんだが,問い合わせてみるとカード自身は切り替えずとも,Google Payに登録すればVisaのタッチ決済が利用できるとのこと。

独立した自動取得アプリと他のアプリの一部として提供される自動取得機能

余談が長くなったが,金融機関における取引明細を自動取得する手段はいくつかある。事業の会計処理を目的にしたものと,家計管理を目的にしたものがあるが,もちろん機能的にかぶる部分は大いにあり,同じ会社がそれぞれの目的のアプリを提供していることはよくある。

これら機能は通常何らかの会計処理アプリの一部機能として実現されている。自分も今まで使用してきた弥生の製品であればスマート取引取込という機能で( “Yayoi Connect” と呼んでいることもあるように思う)。取り込むことについては自動でやることに限らず,CSVファイルをインポートすることもサポートしている。任意のCSVファイルを読み込ませることができ,その際各カラムをどう解釈するかを指定できるので自由度は高い。その一方,エクスポート機能は皆無。なお,スマート取引取込はWebアプリであり,我々が使っているデスクトップアプリのやよいの青色申告からも,それを利用する形になっている。

以下自分が見つけることのできた,要件を満たすものを列挙するが,ほぼ検索エンジンで偶然見つけられたものばかりで,これで網羅できているという確信は全くない。ただ, “無料で使える会計ソフト「MFクラウド」は零細個人事業主には神ツールなのではないか” にあげられている,かつて弥生オンラインが自身で自動取り込み機能がなかったときに依存していた他のアプリは参考にした。とはいえ,POSサービス,請求書等作成サービスはとりあえず関係ないし,Web上の金融情報を一括管理するアカウントアグリゲーションサービス MoneyLook(マネールック連携サービス)はウェブサイトこそまだあるものの, “MoneyLookという資産管理Webアプリを使うと、簡単に現在の資産が一目でわかりますよ – ノマド的節約術” で紹介されているような方法でのサインアップは現在できない。今は少なくともコンシューマー向けに単独で提供はされてない印象

ちなみに,弥生の青色申告ソフト「やよいの青色申告」を今まで使ってきているが,これはCSVファイルをインポートできるようなので,これらの方法で取得したデータを取り込ませることはできる。やよいの青色申告自身が銀行口座やクレジットカードの明細を自動て取得する機能を持っているので機能はかぶることになるが。

ソリマチMoneyLink(マネーリンク)( “【レビュー】銀行やクレカ、電子マネーの明細を自動取得・一元管理できるフリーソフト「MoneyLink」 – 窓の杜” )は,明らかに同社の会計アプリと組み合わせて使われることを想定していながら,あくまで独立したアプリとして提供されているという変わり種。 “Q.インターネットバンキングサービスから入出金明細を取り込み、会計製品へ転送する方法 – 株式会社ソリマチサポートセンター” にはその「会計製品」に直接MoneyLinkからデータをインポートできるかのような記述になっている。

Windowsアプリで無料。インストールフォルダはC:\Program Files (x86)\Sorimachi\Ibpb。FAQs対応金融機関は多数。今後自分の普段使いのクレカにしようかと思っているリクルートカードは三菱UFJニコス(MUFG)カードなのでMoneyLinkでの取引明細の自動取得はできるだろう。

MoneyLinkについて特筆すべきはExcel形式でのデータエキスポート機能もあること。付属のPDFマニュアル(2021年5月の第16刷の自分用の参照用リンク)のp. 34にExcelファイルへのエキスポートについての記載がある。一般的に処理できる形式でデータをエクスポートしてくれるのであれば,その後自由に加工できる。Microsoftが提供するデスクトップ操作の自動化ツール(あるいはRPA (Robotic Process Automation) ツール)がWindows 10で使えるのでそれなんかと組み合わせると自動化も可能だろう。

MoneyLinkはユーザを作成し,それぞれについてそのインポート先金融機関情報を登録していくことになるが,それはMoneyLinkアプリがローカルに持つだけではなく,ソリマチのサーバにもアカウトに紐付けられて保存される。これはクリーンインストールしたMoneyLinkアプリで以前作成したアカウントでログインすると,そのアカウントで登録していた金融機関情報が自動で復元されることでも明らか。なのでMonkeyLinkのアカウント情報は慎重に扱う必要がある。単純なユーザ名とパスワードで認証を行い,2段階認証のような仕組みは用意されていないのでなおのこと。

会計処理をする上で取り引きを勘定科目に割り振る必要があるが,これがある程度にしろ自動化できることが省力化に大きく意味を持つ。 “Q.取引内容から自動的に設定される勘定科目等を登録する方法 – 株式会社ソリマチサポートセンター” なんてヘルプがあるので,MoneyLink内でそれができるのか!と期待したが,ちゃんと読むとそのデータを読み込む会計処理ソフトの側でやる話だった。ただ,自動化の処理内容を見ると単純な文字列のマッチングのようなので,その程度であれば自分でやることもさして難しくなかろう。

Zaim

次のMoneytreeとともに, “3大家計・資産管理サービス Money Forward ME、Moneytree、Zaimの機能比較とおすすめの使い方” で知った。

ZaimAPIを公開しているのはとてもよい。ただ,公式文書はZaimにサインアップしないと見ることができない。”Zaim APIとGASで作る月次精算botと、”FamTech”について|ヒガシ note inc.|note” によれば,クレジットカードの使用履歴はZaimそのものを獲得できても,それを無償プランではAPIで外部からは取り出せないもよう。PythonにはZaim API用専用ライブラリまであるもよう

ところがリポジトリ「MagicalLiebe/pyzaim: Zaimのデータを取得・操作するPythonパッケージ」のドキュメント読むと「Zaimにはクレジットカードや銀行口座から自動でデータ取得する機能があるが、APIではそれらのデータにはアクセスできない」として,結局スクレーピングをやっている,と。APIのドキュメント読むと少なくとも銀行口座のデータは引っ張ってこれそうにも読めるが,はっきりクレジットカードのデータについてそれができると明言されているわけでもない。結局今のところ,クレジットカードの使用履歴がZaim APIで(つまりスクレーピングを使用せず)取得できる・できない,ということについて確たるところはわかっていない

確かなところを知りたくて,Zaim運営事務局に問い合わせたときの返答が以下:

申し訳ございませんが、自動連携で取得したデータは法人向けの API のみ開放しております。
お問い合わせいただいた件について、今後の開発予定は現状未定でございます。

Node.js用ZaimライブラリZaim.js by hotchemiは存在するが2013年のもので,Zaim.jsをAPI ver2.xが使えるように改良した人がいる。 “NodeによるZaimAPIの利用 | qs Developers” も参照。

自動取得に対応するサービス現在の自動取得の不具合をレポートするページ。細かく状況を報告してくれるのはよい。

プレミアムサービスは年払いを選択すると400円/月ほど。無料プランではデータ取得頻度が低く,それゆえの問題が起こる可能性があるが,プレミアムだと任意のタイミングでデータ取得ができメールやモバイルアプリによる入出金通知を受け取ることもできる

MoneyLinkのいつまでエキスポート機能がサポートされるかわからないし,自動化するにはRPAツールが必要。ZaimはAPI提供をいわばウリにしているのでこれが今後除かれる可能性は低い。そう考えるとこちらに出費する方が長期的には妥当なのかも。

Moneytree

マネーツリーは家計管理~資産管理が目的のサービスといえるが,Moneytree 対応金融機関およびサービス一覧 会計に結びつけるにはデータの出力が必要となるので,年額5,400円のMoneytree Workか年額3,600円のMoneytree Growか。月額課金も可能で,会計処理が必要なのは現状確定申告のときだけなので,そのときだけWorkにするというようなやり方もなくはない。

ちなみに米・加の,日本の消費者金融相当のサービスを提供するMoneytreeとは無関係。ワシントン州のTukwilaに本部があるとは知らなかった。

おまけ

この記事元々は,以下に書きなぐってるようにクレカの取り引きデータをAPIで取得できないか,というところから調べ始めた。それでMoneyLinkのことを知った。最終的には,仮に金融機関側にAPIは用意されていても個人では利用できず,直接データを取得することはスクレーピングしか手段がない,仮にスクレーピングするにしてもサービスごとにちまちま自分でプログラムするのは手間がかかり過ぎ,他のできあいのものが利用できるのなら(特にそれが無料なら)そちらを利用するほうがよい,という結論になった。

JCBがMyJCBという名で外部接続サービスを提供している。しかし「連携先法人」からのアクセスしか許していない模様。「連携先法人」として具体的にはまず,それぞれの会計ソフトで知られる,弥生,ソリマチMoneyLink(マネーリンク)で),freeeが含まれる。マネーフォワードは含まれないことに注意。

また,JCBクレカの引き落とし先を特定の銀行にした際に,その銀行のサービスとしてJCBクレカの使用明細も見られるよう。具体的には,セブン銀行,りそなグループの銀行(りそな銀行・埼玉りそな銀行・関西みらい銀行),千葉銀行等。ただし,そうだとしても,今度はその銀行からデータを引き出す必要があるので,同じ種類の別の問題に置き換わっただけとも言える。ただ,この中でセブン銀行はAPI提供に積極的であるようであることから期待が持てると思ったが,API開発者ポータルを見る限りMyJCBから自動でデータを引っ張ってこれそうにない。 “よくあるご質問” を見るとやはり,セブン銀行のオンラインバンキングサイトやモバイルアプリの「Myセブン銀行」でMyJCBが(手動で)アクセスできるだけ,ということのよう。

 

 

 

 

金融機関における取引明細を自動取得する」への1件のフィードバック

  1. ピンバック: 仕事の会計処理 | あくまで暫定措置としてのブログ

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください