(57)【要約】      （修正有）【課題】仮想通貨利用者が、複数の取引所やウォレットを介した取引や、複数種類の仮想通貨を取り扱う場合、仮想通貨の取引を一元的に管理し、適切な収支計算や税務申告、資産状況の把握等を可能にする。【解決手段】取引履歴データの取引種別が仮想通貨間取引の場合、市場データベースを参照し仮想通貨数量を法定通貨に換算した法定通貨換算額を計算し、取引種別が売却に該当する場合は損益額を計算し、一元化取引履歴データベースに記憶する仮想通貨間取引換算処理手段と、取引種別が仮想通貨による物品・サービスの購入の場合、取引データベースを参照して仮想通貨数量の法定通貨換算額を取得し、損益額を計算し、一元化取引履歴データベースに記憶する物品・サービス購入取引換算処理手段と、取引種別が仮想通貨の入金・出金・送金・受取いずれかの場合、取引種別を書き換えて一元化取引履歴データベースに保存する仮想通貨送金・受領処理手段と、を備える。【選択図】図６
2019145060.tif 000002
【特許請求の範囲】
【請求項１】
複数の取引所又はウォレットを介して複数の種類の仮想通貨を取引する仮想通貨取引を一元化して管理する仮想通貨管理システムであって、
取引所又はウォレット別に、仮想通貨から法定通貨への換算レートとして公表仲値もしくは終値を含む適切な数値を、年月日及び仮想通貨種別に関連して蓄積する市場データベースと、
ウォレットにおける物品・サービス購入取引のすべての決済履歴を、法定通貨による決済金額を含め、年月日に関連して蓄積する取引データベースと、
各取引所又はウォレットから取得した利用者の取引履歴データを一元化して管理するために保存する一元化取引履歴データベースと、
各取引所又はウォレットから取得した取引履歴データを、取引所又はウォレット別に、仮想通貨種別毎に取引日時順に並び替えて、取引日時・取引種別・仮想通貨種別・取引の仮想通貨数量の各データ項目を含む統一した保存形式のデータに変換する取引履歴データフォーマット変換処理手段と、
取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨間取引であると判断した場合、市場データベースを参照して当該取引日の公表仲値もしくは終値を含む適切な数値により仮想通貨数量を法定通貨に換算した法定通貨換算額を計算し、さらに当該取引種別が売却に該当する場合は、当該仮想通貨取引数量に当該仮想通貨の取得時の単価を乗じて求めた金額と、当該取引日の換算額との差を損益額として計算し、当該フォーマット済取引履歴データを当該法定通貨換算額と損益額と共に、一元化取引履歴データベースに記憶する、仮想通貨間取引換算処理手段と、
取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨による物品・サービスの購入であると判断した場合、取引データベースを参照して当該取引の決済金額を決済に要した仮想通貨数量の法定通貨換算額として取得し、さらに決済に要した仮想通貨数量を市場データベースを参照して直前の仮想通貨購入日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して当該取引日の法定通貨換算額との差を損益額として計算し、当該フォーマット済取引履歴データを当該法定通貨換算額と損益額と共に、一元化取引履歴データベースに記憶する、物品・サービス購入取引換算処理手段と、
取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨の入金・出金・送金・受取のいずれかである場合、すべてのフォーマット済取引履歴データの取引日及び仮想通貨数量を照合し、取引時間が同じとみなされる送金・受取があれば、損益額の計算を行わずに当該フォーマット済取引履歴データを一元化取引履歴データベースに保存し、取引時間が同じとみなされる送金・受取に該当しなければ、送金については相手方不明の払い出しとして取引種別を書き換えて一元化取引履歴データベースに保存し、受取については取得原価不明の受け入れとして取引種別を書き換えて一元化取引履歴データベースに保存する、仮想通貨送金・受領処理手段と、を備えた、仮想通貨管理システム。
【請求項２】
期間、仮想通貨種別、取引種別を含む入力された収支計算の条件に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの損益額を集計する、仮想通貨取引収支計算処理手段をさらに備えた、請求項１に記載の仮想通貨管理システム。
【請求項３】
年月日に関連して法定通貨と他の通貨との公表換算レートを蓄積した為替データベースをさらに備えることにより、集計された損益額から、為替データベースを参照することにより指定された通貨による換算額を求めることが出来る、請求項２に記載の仮想通貨管理システム。
【請求項４】
期間、仮想通貨種別、取引種別を含む入力された残高集計の条件に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの仮想通貨数量を、市場データベースを参照して指定された日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して集計する、仮想通貨残高集計処理手段をさらに備えた、請求項１に記載の仮想通貨管理システム。
【請求項５】
年月日に関連して法定通貨と他の通貨との公表換算レートを蓄積した為替データベースをさらに備えることにより、集計された仮想通貨残高から、為替データベースを参照することにより指定された通貨による換算額を求めることが出来る、請求項４に記載の仮想通貨管理システム。
【請求項６】
会計処理上の期間及び取引の単位・科目の設定・仕訳データの通貨表記・仕訳データのフォーマット形式を含む入力された会計処理設定に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの仮想通貨数量を、市場データベースを参照して指定された日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して集計し、必要であればさらに為替データベースを参照することにより指定された通貨表記による換算額を求め、設定された仕訳データのフォーマット形式に変換する、仮想通貨会計処理手段をさらに備えた、請求項１に記載の仮想通貨管理システム。
【請求項７】
入力された会計期間に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、期末時点における仮想通貨毎の仮想通貨残高数量と取得原価を集計・計算し、設定された仕訳データのフォーマット形式に変換する、仮想通貨期末会計処理手段をさらに備えた、請求項６に記載の仮想通貨管理システム。
【請求項８】
入力された会計期間に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、期末時点における仮想通貨毎の仮想通貨残高数量と取得原価を集計・計算し、市場データベースを参照して期末時点における公表仲値もしくは終値を含む適切な数値により仮想通貨残高数量を法定通貨に換算し、時価評価前の取得原価との差額により期末評価損益を計算して、仕訳データのフォーマット形式に変換する、仮想通貨期末会計処理手段をさらに備えた、請求項６に記載の仮想通貨管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、仮想通貨に関する取引を一元化して管理し、さらに仮想通貨に関する取引の会計処理をサポートすることのできる仮想通貨管理システムに関する。
【背景技術】
【０００２】
ビットコインをはじめとする仮想通貨は、近年、物やサービス購入の決済手段、個人間等の送金手段、あるいは投資の対象として、注目を集めている。これに呼応して、日本においては、２０１７年４月から「資金決済に関する法律」及び「犯罪による収益の移転の防止に関する法律」が改正され、仮想通貨の定義及び仮想通貨交換所のルールが規定された。さらに、国税庁によれば、ビットコインをはじめとする仮想通貨を売却又は使用することにより生じる利益については、原則として雑所得に区分され、所得税の対象となるとしている。また、２０１８年３月には、企業会計基準委員会が「資金決済法における仮想通貨の会計処理等に関する当面の取扱い」を公表し、２０１８年４月以後開始する事業年度から、仮想通貨取引も会計処理上の取引として評価し、賃借対照表及び損益計算書に開示することが求められている。
【０００３】
ここで、仮想通貨とは、インターネットを通じて不特定多数の間で物品やサービスの対価に使用することができ、中央銀行などの公的な発行主体や管理者が存在せず、専門の取引所を介して法定通貨と交換できるもの、と捉えることができる。仮想通貨は、海外では「暗号通貨」と呼ばれることが多いが、本明細書では、統一して「仮想通貨」と言うことにする。仮想通貨としては、現在はビットコインが代表的であるが、ビットコイン以外にも多くの種類の仮想通貨が存在し、代表的なものとしては、イーサリアム、ライトコイン、リップル、モナーコイン等が挙げられ、仮想通貨の取引所も、複数の仮想通貨を取り扱う取引所が多い。
【０００４】
ところで、仮想通貨の利用者は、通常、海外を含め複数の取引所やウォレットを利用し、複数の種類の仮想通貨を取り扱う場合が多いと考えられる。一方、仮想通貨については、中央管理者が不在であるため、統一的な取引市場がなく、取引のルールや法定通貨との換算レートや手数料については、それぞれの取引所に運用が任されている。また、仮想通貨の取引履歴については、各取引所やウォレットの運営者から取引データを入手することが可能であるが、取引データのデータ形式やフォーマットは統一されていない。従って、税務申告や資産状況の把握のために、仮想通貨の残高・取得原価・収支等の計算を行おうとすると、以下に記載するような問題に直面する。
【０００５】
・１つの取引所での正確な（確定申告を行うに足る）収支計算システムが提供されていない。
・複数の取引所・ウォレット間で送金を行うと、以後の収支計算が非常に難しくなる。
・仮想通貨決済を行った場合、その対価額（法定通貨による金額）の把握ができない。
・海外取引所を利用した場合、為替換算が簡単にできない。
・複数取引所の各仮想通貨・トークン残高を一元して管理することができない。
・仮想通貨の取引を扱う会計データ作成ツールがまだ存在していない。
【０００６】
上記した様々な問題から、仮想通貨についての残高・取得原価・収支計算等を正確にしようとすればするほど計算も管理も煩雑で難しくなり、確定申告や会計処理を行う手間も莫大なものとなってしまう。
【０００７】
なお、出願人は、上記したような問題を解決するためのシステムに関する先行技術について調査を試みた。例えば「仮想通貨」と「管理」をキーワードとして検索を実行した結果、下記の仮想通貨管理プログラムに関する特許文献を見出したが、特許文献１は、仮想通貨のマイニングに関する課題を解決しようとするものであり、特許文献２は、仮想通貨の取引情報の真正性の保証度を高める方法に係るものであり、いずれも、複数の取引所を介した仮想通貨の取引等を管理することを目的としたものではない。出願人が調査した範囲においては、上記した問題を解決するための先行技術を見出すことはできなかった。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１６−２１８６３３号公報
【特許文献２】特開２０１７−２０７８６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、仮想通貨利用者が、海外を含め複数の取引所やウォレットを介して取引を行う場合や、複数の種類の仮想通貨を取り扱う場合に、仮想通貨の取引を一元的に管理でき、仮想通貨の取引に関する適切な収支計算や税務申告、資産状況の把握などを可能にし、さらに会計処理をサポート可能なシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、上記課題を解決するための、複数の取引所又はウォレットを介して複数の種類の仮想通貨を取引する仮想通貨取引を一元化して管理する仮想通貨管理システムであって、取引所又はウォレット別に、仮想通貨から法定通貨への換算レートとして公表仲値もしくは終値を含む適切な数値を、年月日及び仮想通貨種別に関連して蓄積する市場データベースと、ウォレットにおける物品・サービス購入取引のすべての決済履歴を、法定通貨による決済金額を含め、年月日に関連して蓄積する取引データベースと、各取引所又はウォレットから取得した利用者の取引履歴データを一元化して管理するために保存する一元化取引履歴データベースと、各取引所又はウォレットから取得した取引履歴データを、取引所又はウォレット別に、仮想通貨種別毎に取引日時順に並び替えて、取引日時・取引種別・仮想通貨種別・取引の仮想通貨数量の各データ項目を含む統一した保存形式のデータに変換する取引履歴データフォーマット変換処理手段と、取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨間取引であると判断した場合、市場データベースを参照して当該取引日の公表仲値もしくは終値を含む適切な数値により仮想通貨数量を法定通貨に換算した法定通貨換算額を計算し、さらに当該取引種別が売却に該当する場合は、当該仮想通貨取引数量に当該仮想通貨の取得時の単価を乗じて求めた金額と、当該取引日の換算額との差を損益額として計算し、当該フォーマット済取引履歴データを当該法定通貨換算額と損益額と共に、一元化取引履歴データベースに記憶する、仮想通貨間取引換算処理手段と、取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨による物品・サービスの購入であると判断した場合、取引データベースを参照して当該取引の決済金額を決済に要した仮想通貨数量の法定通貨換算額として取得し、さらに決済に要した仮想通貨数量を市場データベースを参照して直前の仮想通貨購入日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して当該取引日の法定通貨換算額との差を損益額として計算し、当該フォーマット済取引履歴データを当該法定通貨換算額と損益額と共に、一元化取引履歴データベースに記憶する、物品・サービス購入取引換算処理手段と、取引履歴データフォーマット変換処理手段により生成されたフォーマット済取引履歴データの取引種別が仮想通貨の入金・出金・送金・受取のいずれかである場合、すべてのフォーマット済取引履歴データの取引日及び仮想通貨数量を照合し、取引時間が同じとみなされる送金・受取があれば、損益額の計算を行わずに当該フォーマット済取引履歴データを一元化取引履歴データベースに保存し、取引時間が同じとみなされる送金・受取に該当しなければ、送金については相手方不明の払い出しとして取引種別を書き換えて一元化取引履歴データベースに保存し、受取については取得原価不明の受け入れとして取引種別を書き換えて一元化取引履歴データベースに保存する、仮想通貨送金・受領処理手段と、を備えている。
【００１１】
そして、このような構成により、仮想通貨利用者が、海外を含め複数の取引所やウォレットを介して取引を行う場合や、複数の種類の仮想通貨を取り扱う場合に、仮想通貨の取引を一元的に管理できる。
【００１２】
本発明による仮想通貨管理システムは、さらに、期間、仮想通貨種別、取引種別を含む入力された収支計算の条件に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの損益額を集計する、仮想通貨取引収支計算手段を備えることができる。また、年月日に関連して法定通貨と他の通貨との公表換算レートを蓄積した為替データベースをさらに備えることにより、集計された損益額から、為替データベースを参照することにより指定された通貨による換算額を求めることができる。
【００１３】
本発明による仮想通貨管理システムは、さらに、期間、仮想通貨種別、取引種別を含む入力された残高集計の条件に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの仮想通貨数量を、市場データベースを参照して指定された日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して集計する、仮想通貨残高集計処理手段をさらに備えることができる。また、年月日に関連して法定通貨と他の通貨との公表換算レートを蓄積した為替データベースをさらに備えることにより、集計された仮想通貨残高から、為替データベースを参照することにより指定された通貨による換算額を求めることができる。
【００１４】
本発明による仮想通貨管理システムは、さらに、会計処理上の期間及び取引の単位・科目の設定・仕訳データの通貨表記・仕訳データのフォーマット形式を含む入力された会計処理設定に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、各取引履歴データの仮想通貨数量を、市場データベースを参照して指定された日の公表仲値もしくは終値を含む適切な数値により法定通貨に換算して集計し、必要であればさらに為替データベースを参照することにより指定された通貨表記による換算額を求め、設定された仕訳データのフォーマット形式に変換する、仮想通貨会計処理手段を備えることができる。
【００１５】
また、本発明による仮想通貨管理システムは、入力された会計期間に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、期末時点における仮想通貨毎の仮想通貨残高数量と取得原価を集計・計算し、設定された仕訳データのフォーマット形式に変換する、仮想通貨期末会計処理手段、又は、入力された会計期間に従って、一元化取引履歴データベースから該当する取引履歴データを抽出し、期末時点における仮想通貨毎の仮想通貨残高数量と取得原価を集計・計算し、市場データベースを参照して期末時点における公表仲値もしくは終値を含む適切な数値により仮想通貨残高数量を法定通貨に換算し、時価評価前の取得原価との差額により期末評価損益を計算して、仕訳データのフォーマット形式に変換する、仮想通貨期末会計処理手段を、さらに備えることができる。
【発明の効果】
【００１６】
本発明によれば、仮想通貨利用者が、海外を含め複数の取引所やウォレットを介して取引を行う場合や、複数の種類の仮想通貨を取り扱う場合に、仮想通貨の取引を一元的に管理でき、仮想通貨の取引に関する適切な収支計算や税務申告のための損益の把握、資産状況の把握などを可能にし、さらに仮想通貨の取引を会計処理に取り込めるようにしたシステムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明によるシステムの概略構成を示すブロック図である。
【図２】取引所やウォレットの取引履歴データのデータ項目の例を表形式で示す図である。
【図３】フォーマット済取引履歴データファイル３３に保存される取引履歴データのデータ項目の例を表形式で示す図である。
【図４】一元化取引履歴データベース３４に保存される取引履歴データのデータ項目の例を表形式で示す図である。
【図５】市場データベース３５に蓄積されているデータ項目の例を表形式で示す図である。
【図６】一元化取引履歴データベース３４に取引履歴データを保存するまでの処理過程を示すフロー図である。
【図７】収支計算の処理過程を示すフロー図である。
【図８】残高集計の処理過程を示すフロー図である。
【図９】会計データ作成の処理過程を示すフロー図である。
【図１０】会計期末処理の処理過程を示すフロー図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照しながら、本発明による仮想通貨管理システム（以下、「本システム」という）の実施の形態について説明する。
【００１９】
最初に、本システムのハードウェア構成について、図１を用いて説明する。図１は、本システムの概略構成を示すブロック図である。本システムの処理を実行するサーバ１は、図１に示すように、制御部２、記憶部３、入力部５、表示部６、出力部７、通信インターフェイス８を備えている。制御部２は、データの入出力・記録・読み出しをはじめとするコンピュータ全体の動作を制御するＣＰＵやＭＰＵ、ＣＰＵ等が直接アクセス可能な主記憶装置であって処理に必要なデータやプログラムを格納する内部メモリを備え、これらによって参照番号２１〜２７で示す各処理手段（これらの機能の詳細は後段で説明する）として機能する。記憶部３は、本システムにおける処理を実行するためのプログラムやデータ等を格納する半導体メモリ素子、ハードディスク、光デスク等の記憶装置である。また、サーバ１は、データを入力するためのボタン、タッチパネル、音声入力デバイス、キーボードやマウスなどの入力デバイスから構成される入力部５、データ入力画面や処理結果等を表示するＣＲＴディスプレイや液晶ディスプレイなどの表示部６、処理結果や各種データを出力するプリンタなどの出力部７、ネットワークを介して他のサーバや端末装置等と各種情報を送受信するための通信インターフェイス８を備えている。
【００２０】
記憶部３は、本システムの処理の実行に必要なプログラム３１を記憶しており、プログラム３１は必要に応じて制御部２の内部メモリにロードされ、ＣＰＵを含むサーバ１のハードウェアと協働して、本システムの処理、具体的には、取引履歴データフォーマット変換処理手段２１、仮想通貨間取引換算処理手段２２、物品・サービス購入取引換算処理手段２３、仮想通貨送金・受領処理手段２４、仮想通貨取引収支計算処理手段２５、仮想通貨残高集計処理手段２６、仮想通貨会計データ処理手段２７として機能する。
【００２１】
また、記憶部３は、制御部２で実行される各処理に利用するデータや各処理によって生成されるデータを記憶するための、取引所・ウォレット別取引履歴データファイル３２、フォーマット済取引履歴データファイル３３、一元化取引履歴データベース３４及び会計データファイル３８と、各処理に必要なデータを参照するためのデータベース、すなわち、市場データベース３５、取引データベース３６及び為替データベース３７を備えている。なお、取引所・ウォレット別取引履歴データファイル３２及びフォーマット済取引履歴データファイル３３については、記憶部３において、当該データファイルの記憶領域を本システムの構成として恒常的に確保する場合も含むし、経過的に生成されるデータファイルとして一時的に保存する領域が確保される場合も含む。
【００２２】
次に、図２〜図１０を用いて、制御部２における各処理手段及び記憶部３が蓄積するデータの内容についてさらに詳しく説明する。図２〜図５は、記憶部３が蓄積するデータファイルやデータベースのデータ項目等を示す図であり、図６〜図１０は、本システムにおける処理の流れを示す図である。
【００２３】
図１及び図６に示す取引所・ウォレット別取引履歴データファイル３２は、本システムを利用して仮想通貨を管理しようとする利用者の、複数の仮想通貨取引所（以下「取引所」という）やウォレットにおける、取引の履歴に関するデータを一時的に保存するものである。各取引所やウォレットの取引履歴あるいは利用履歴データ（以下、まとめて「取引履歴データ」という）は、通常、各取引所やウォレットの運営会社のウェブサイトから、ＡＰＩまたはＣＳＶファイル等により取得することができる。図２は、例えば、Ａ取引所、Ｂ取引所及びＣウォレットを利用している場合に、それぞれの取引履歴データをダウンロードしたファイルに含まれるデータ項目の例を表形式で示した図である。図２に示す通り、それぞれの取引履歴データは、形式は統一されていないが、本システムにおける処理に必要な項目、例えば、取引日時、取引種別（仮想通貨の購入、売却、入金、出金、サービスや物品の購入決済、など）、取引の対象となる仮想通貨種別、取引した仮想通貨数量、が含まれている。各取引履歴データの本システムへの取り込み方法については特に制限はなく、ネットワークを介して受領してもよいし、入力部５から入力してもよく、取引所・ウォレット別取引履歴データファイル３２に保存出来れば良い。
【００２４】
図６に示すように、本システムの処理は、まず、取引所・ウォレット別取引履歴データファイル３２に蓄積されている各取引履歴データを、本システムで一元的に取り扱うために、取引履歴データフォーマット変換処理手段２１（図１参照）により、統一した形式にフォーマットを変換して、フォーマット済取引履歴データファイル３３に保存することから開始される（Ｓ１）。
【００２５】
図３は、図２で示したＡ取引所の取引履歴データを取引履歴データフォーマット変換処理手段２１により変換したデータの例を示している。通常、各取引所から取得する取引履歴データは、取引日時の順にデータが蓄積されている。取引履歴データフォーマット変換処理手段２１は、取引所・ウォレット別取引履歴データファイル３２に蓄積されている各取引履歴データを、図３に示すように、取引所又はウォレット毎に、仮想通貨の種類別に、取引日時順に並び替えを行い、各取引所やウォレットのデータを一元化して扱えるように、データの項目や保存形式を変換して統一化して、フォーマット済取引履歴データファイル３３に保存する。本実施の形態では、以下、図３に示した形式にフォーマット変換したとして説明を続ける。
【００２６】
本システムの処理の次の段階は、フォーマット済取引履歴データファイル３３に保存された取引履歴データのデータ項目の内容から、どのような取引を行ったかを判断し、取引種別によって必要な換算処理を行い、それぞれの取引の損益を計算して、一元化取引履歴データベース３４に保存していく流れである。
【００２７】
図６に示すステップＳ２として、サーバ１の制御部２は、取引履歴データ中の項目「取引種別」のデータから、当該取引が仮想通貨間取引であるか否かを判断する。仮想通貨間取引とは、仮想通貨の売買であり、仮想通貨同士の売買も含む。例えば、図３では、取引種別として、購入や売却となっているデータが仮想通貨間取引であり、ビットコイン（ＢＴＣ）やイーサリアム（ＥＴＨ）の売買を日本円で決済している取引のほかに、イーサリアム（ＥＴＨ）をビットコイン（ＢＴＣ）で購入している取引もある。
【００２８】
ステップＳ２において、制御部２は、フォーマット済取引履歴データファイル３３にアクセスし、保存されている取引履歴データ１件毎に取引種別を判断し、当該取引が仮想通貨間取引であると判断した場合、仮想通貨間取引換算処理手段２２（図１参照）は、市場データベース３５を参照して、当該取引の仮想通貨数量を法定通貨（本実施の形態では日本円）に換算する。図５は、市場データベース３５に蓄積されるデータの項目の例を示しており、年月日毎に、取引所別に、取り扱う仮想通貨のレートとして、公表仲値、終値を含む、換算レートとして適切な公表数値が蓄積されている（図５では、公表仲値のみが記載されているが、始値や終値等を蓄積することが可能である）。従って、ステップＳ２では、当該取引が仮想通貨間取引であると判断した場合、あらかじめ設定された取引所の当該取引日の換算レートにより、当該取引の仮想通貨数量を日本円に換算する。具体的には、当該取引がどの取引所の取引であるかを判断し、当該取引所が仮想通貨のレートを公表している場合は、当該取引日の公表仲値もしくは終値等の適切な数値により、当該取引の仮想通貨数量を日本円に換算する。一方、当該取引所がレートを公表していない場合、または当システムが対応していない取引所による場合は、あらかじめ設定した特定の取引所の公表仲値もしくは終値を含む適切な数値により、当該取引の仮想通貨数量を日本円に換算する。さらに、当該取引が売却の場合には、当該取引の仮想通貨数量に当該仮想通貨の取得時の単価を乗じて求めた金額と、当日の換算額との差額を求める。この差額が損益額となる。仮想通貨の取得時の単価については、フォーマット済取引履歴データファイル３３の取引履歴データに含まれている場合（例えば、図２中のＢ取引所の取引履歴データ）はこのデータを使用し、取引履歴データに含まれていない場合は、取得時の仮想通貨取引数量と決済通貨による決済通貨数量（例えば、図３の例）とから取得時の単価を求めることが出来る。
【００２９】
以上に述べた手順により、フォーマット済取引履歴データファイル３３に含まれる各取引についてのデータ項目である取引日時、取引ＩＤ、取引種別（仮想通貨の購入、売却、入金、出金、サービスや物品の購入決済、など）、取引の対象となる仮想通貨種別及び決済通貨種別、取引した仮想通貨数量に、取引所又はウォレットの識別、損益額、を含めて、一元化取引履歴データベース３４に保存する（Ｓ３）。
【００３０】
なお、該当する取引所の取引所等からダウンロードした取引履歴データでは、例えば日本円での決済取引の場合、決済金額も取引履歴データとして含まれるものもある。しかしながら、通常、仮想通貨の取引所におけるレートは、一日のうちでも刻々と変化するものであり、例えば確定申告のために法定通貨で取引金額を確定する場合、恣意的なレートを選択して換算したとみなされないためにも、一定の基準に基づくレートで換算することが望ましい、従って、本実施の形態においては、取引所が公表する当該取引日の公表仲値もしくは終値等を含む、適切な換算レートとして設定した公表値により換算している。一定の基準に基づくレートで換算する点では、公表仲値で換算する方法が一般的と考えられるが、例えば、常に始値又は終値のレートで換算する方法もある。なお、仮想通貨同士の取引の場合は、双方の通貨の数量を、市場データベース３５を利用して、法定通貨建てに換算した後、同様に損益の計算を行う。
【００３１】
図４では、一元化取引履歴データベース３４に保存するデータの例を示している。一つの取引について保存される項目は、取引所（又はウォレット）、取引日時、取引ＩＤ、取引種別、通貨ペア（取引の対象となる仮想通貨種別及び決済通貨種別）、取引された仮想通貨数量、換算通貨（換算する法定通貨の種別）、法定通貨換算金額、損益額、を含む。後段で説明する収支計算、残高集計及び会計データ処理は、この一元化取引履歴データベース３４から必要なデータを抽出して実行することができる。
【００３２】
次に、図６に示すステップＳ４においては、サーバ１の制御部２は、フォーマット済取引履歴データファイル３３にアクセスし、保存されている各ウォレットの取引履歴データ中の項目「取引種別」から、当該取引が仮想通貨による物品・サービスの購入であるか否かを判断する。仮想通貨による物品・サービスの購入であると判断した場合、物品・サービス購入取引換算処理手段２３（図１参照）は、取引データベース３６を参照して、当該取引の仮想通貨数量を法定通貨（本実施の形態では日本円）に換算する。取引データベース３６は、ウォレットの運営者が提供する、各物品・サービス購入取引における決済履歴を蓄積したデータベースであり、取引データベース３６を参照することにより、利用者がウォレットから物品・サービス購入した場合に実際に決済した金額を取得することが出来る。また、当該ウォレットにおいて、仮想通貨を入金した日の公表仲値もしくは終値等の適切な数値のレートを市場データベース３５から取得して、購入に要した仮想通貨の通貨数量を法定通貨建てに換算し、実際に決済した金額との差を求める。この差額が損益額となる。このようにして、フォーマット済取引履歴データファイル３３に含まれる各取引についてのデータ項目である取引日時、取引ＩＤ、取引種別（仮想通貨の購入、売却、入金、出金、サービスや物品の購入決済、など）、取引の対象となる仮想通貨種別、取引した仮想通貨数量に、取引所又はウォレットの識別、法定通貨換算額、損益額、を含めて、一元化取引履歴データベース３４に保存する（Ｓ５）。
【００３３】
さらに、図６に示すステップＳ６においては、サーバ１の制御部２は、フォーマット済取引履歴データファイル３３にアクセスし、保存されている各取引所や各ウォレットのすべての取引履歴データ中の項目「取引種別」における入金や出金（送金・受取）に該当する取引日や仮想通貨数量を照合し（Ｓ７）、取引時間が同じとみなされる送金・受取がある場合（例えば、取引所のアカウントからウォレットへの金額の移動）は（Ｓ８）、当該取引履歴データについては、相互の取引での損益を計算せず取得原価のデータをそのまま一元化取引履歴データベース３４に記憶する（Ｓ９）。また、ステップＳ８において、取引時間が同じとみなされる送金・受取がない場合は、送金（出金）については相手方不明の払い出しとして取引種別に書き込み、一元化取引履歴データベース３４に保存し、入金（送金受領）については、取得原価不明の受け入れとして取引種別に書き込み、一元化取引履歴データベース３４に保存する（Ｓ１０）。
【００３４】
以上に述べたようにして、すべての取引所及びウォレットにおける仮想通貨の取引履歴データを、一元化取引履歴データベース３４に取り込んで保存する。なお、図６に示す、ステップＳ２〜Ｓ３、ステップＳ４〜Ｓ５、ステップＳ６〜Ｓ１０の各流れについては、図６に示す順番に実行する必要はなく、どのような順番で実行してもよい。
【００３５】
次に、図７を用いて、収支計算の手順について説明する。例えば、制御部２が提供するメニュー選択画面において、利用者が収支計算メニューを選択すると、それを認識した仮想通貨取引収支計算処理手段２５（図１参照）は、条件入力するための画面を表示部６に表示させる。利用者が、入力部５から、期間、仮想通貨の種類、取引の種類を含む収支計算の条件を指定すると（Ｆ１）、仮想通貨取引収支計算処理手段２５は、一元化取引履歴データベース３４にアクセスし、指定された条件に従って、該当する取引履歴データを抽出する（Ｆ２）。一元化取引履歴データベース３４の取引履歴データについては、所定の法定通貨（本実施の形態では日本円）ですでに換算されたデータが蓄積されているが、他の通貨により収支計算する場合を想定して、仮想通貨取引収支計算処理手段２５は次のステップとして、為替換算の有無及び通貨の種類の入力画面を表示部６に表示させ、利用者の入力を促す。利用者が入力部５から、為替換算の有無や通貨の種類を入力すると、これを受けて、為替換算が必要と判断すると（Ｆ３）、仮想通貨取引収支計算処理手段２５は、為替データベース３７を参照して、すでに保存されている法定通貨による損益額を指定された通貨に換算し（Ｆ４）、収支計算（各取引履歴データに含まれる損益額を集計）を実行し（Ｆ５）、収支計算結果を出力する。また、為替換算の必要がないと判断した場合は、仮想通貨取引収支計算処理手段２５は、すでに保存されている法定通貨換算額のデータを用いて、収支計算（各取引履歴データに含まれる損益額を集計）を実行し（Ｆ５）、収支計算結果を出力する。なお、為替データベース３７は、年月日に関連して、当該年月日の各通貨と法定通貨との公表換算レートを蓄積したデータベースである。
【００３６】
次に、図８を用いて、仮想通貨に関する資産状況確認の手順について説明する。例えば、制御部２が提供するメニュー選択画面において、利用者が資産状況確認メニューを選択すると、それを認識した仮想通貨残高集計処理手段２６（図１参照）は、条件入力するための画面を表示部６に表示させる。利用者が、入力部５から、期間、仮想通貨の種類、取引の種類を含む残高集計の条件を指定すると（Ｎ１）、仮想通貨残高集計処理手段２６は、一元化取引履歴データベース３４から、指定された条件に従って、該当する取引履歴データを抽出する（Ｎ２）。次に、仮想通貨残高集計処理手段２６は、利用者に残高集計する仮想通貨について、資産評価の指定日の入力を促し、利用者が指定日を入力すると、その入力を受けて、市場データベース３５にアクセスし、指定日の公表仲値もしくは終値等の適切な数値により、抽出されたデータの仮想通貨の数量を法定通貨に換算する（Ｎ３）。次に、他の通貨により残高を確認したい場合を想定して、仮想通貨残高集計処理手段２６は、次のステップとして、為替換算の有無及び通貨の種類の入力画面を表示部６に表示させ、利用者の入力を促す。利用者が入力部５から、為替換算の有無や通貨の種類を入力すると、これを受けて、為替換算が必要と判断すると（Ｎ４）、仮想通貨残高集計処理手段２６は、為替データベース３７を参照して、すでに保存されている法定通貨換算額を指定された通貨に換算し（Ｎ５）、仮想通貨の種類毎に残高集計を実行し（Ｎ６）、仮想通貨残高一覧表を出力する。また、為替換算の必要がないと判断した場合は、仮想通貨残高集計処理手段２６は、すでに保存されている法定通貨換算額のデータを用いて、仮想通貨の種類毎に残高集計を実行し（Ｎ６）、仮想通貨残高一覧表を出力する。
【００３７】
次に、図９を用いて、会計データ処理の手順について説明する。例えば、制御部２が提供するメニュー選択画面において、利用者が会計データ処理メニューを選択すると、それを認識した仮想通貨会計データ処理手段２７（図１参照）は、会計仕訳データを作成するための設定画面を表示部６に表示させる。利用者が、入力部５から、収支を計算・集計するために設定する会計上認められる期間や取引の単位の設定（取引毎、１日毎、１月毎、年度毎、など）、勘定科目や補助科目の設定、会計仕訳データをどの法定通貨表記で作成するかについての通貨表記、利用者の会計データシステムで利用するために提供する会計仕訳データのフォーマット形式の指定（例えば、ＣＳＶファイル形式や、利用者の会計ソフトウェアに取り込めるデータ形式）、等の設定入力を行うと（Ａ１）、仮想通貨会計データ処理手段２７は、一元化取引履歴データベース３４にアクセスし、指定された条件に従って、該当する取引履歴データを抽出し（Ａ２）、ステップＡ１での設定に従って、取得した取引履歴データから、法定通貨（本実施の形態では日本円）による収支計算・集計を実行する（Ａ３）。また、ステップＡ１の設定から、為替換算が必要と判断すると（Ａ４）、仮想通貨会計データ処理手段２７は、為替データベース３７を参照して、収支計算・集計された法定通貨による金額を指定された通貨に換算し（Ａ５）、会計仕訳データとして出力する（Ａ６）。会計仕訳データは、その段階で会計データファイル３８に蓄積される一方、ステップＡ１での設定に従って、指定された会計処理用フォーマットに変換され（Ａ７）、利用者の会計システムで利用可能なフォーマット済仕訳データとして出力する（Ａ８）。
【００３８】
次に、図１０を用いて、会計データの期末処理について説明する。例えば、制御部２が提供するメニュー選択画面において、利用者が期末処理メニューを選択すると、それを認識し仮想通貨会計データ処理手段２７は、条件入力するための画面を表示部６に表示させる。利用者が、入力部５から、会計期間を指定すると（Ｅ１）、仮想通貨会計データ処理手段２７は、一元化取引履歴データベース３４から、指定された期間に従って、該当する取引履歴データを抽出する（Ｅ２）。次に、仮想通貨会計データ処理手段２７は、抽出された取引履歴データから、会計期間の期末における各仮想通貨の仮想通貨数量残高と取得原価を集計・計算する（Ｅ３）。
【００３９】
ここで、利用者が仮想通貨の期末残高の時価評価を実行するかどうかの確認画面が制御部２から提供され（Ｅ４）、時価評価の実行が選択された場合には、仮想通貨会計データ処理手段２７は、市場データベース３５にアクセスし、時価評価を実行する日の公表仲値もしくは終値等の適切な数値により、集計された各仮想通貨の残高数量を法定通貨に換算する（Ｅ５）。次に、評価替えされた各仮想通貨の法定通貨換算額を集計し、時価評価前の取得原価との差額により期末時価評価損益を計算する（Ｅ６）。ステップＥ６で求めた期末時価評価損益を期末残高として繰越処理用データとし（Ｅ７）、会計データファイル３８に保存する一方、指定された会計処理用フォーマットに変換し（Ｅ９）、利用者の会計システムで利用可能な繰り越し処理用データとして出力する（Ｅ１０）。
【００４０】
一方、ステップＥ４で時価評価の実行が選択されなかった場合は、ステップＥ３で集計・計算された仮想通貨毎の期末残高及び取得原価を繰越処理用データとし（Ｅ８）、会計データファイル３８に保存する一方、指定された会計処理用フォーマットに変換し（Ｅ９）、利用者の会計システムで利用可能な繰り越し処理用データとして出力する（Ｅ１０）。
【符号の説明】
【００４１】
１  サーバ
２  制御部
３  記憶部
５  入力部
６  表示部
７  出力部
８  通信インターフェイス
２１  取引履歴データフォーマット変換処理手段
２２  仮想通貨間取引換算処理手段
２３  物品・サービス購入取引換算処理手段
２４  仮想通貨送金・受領処理手段
２５  仮想通貨取引収支計算処理手段
２６  仮想通貨残高集計処理手段
２７  仮想通貨会計データ処理手段
３１  処理プログラム
３２  取引所・ウォレット別取引履歴データファイル
３３  フォーマット済取引履歴データファイル
３４  一元化取引履歴データベース
３５  市場データベース
３６  取引データベース
３７  為替データベース
３８  会計データファイル
【図１】
2019145060.tif 000003
【図２】
2019145060.tif 000004
【図３】
2019145060.tif 000005
【図４】
2019145060.tif 000006
【図５】
2019145060.tif 000007
【図６】
2019145060.tif 000008
【図７】
2019145060.tif 000009
【図８】
2019145060.tif 000010
【図９】
2019145060.tif 000011
【図１０】
2019145060.tif 000012