JP6409115B1 - Automatic journal server and automatic journal program - Google Patents
Automatic journal server and automatic journal program Download PDFInfo
- Publication number
- JP6409115B1 JP6409115B1 JP2017249800A JP2017249800A JP6409115B1 JP 6409115 B1 JP6409115 B1 JP 6409115B1 JP 2017249800 A JP2017249800 A JP 2017249800A JP 2017249800 A JP2017249800 A JP 2017249800A JP 6409115 B1 JP6409115 B1 JP 6409115B1
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- journal
- virtual currency
- user
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
【課題】仮想通貨ベースの取引の仕訳を自動的かつ効率的に行うことを可能にする。
【解決手段】ユーザデータベース2hは、仮想通貨ベースの取引を行うユーザ毎に固有の仮想通貨アドレスを記憶する。ブロックチェーン情報取得部2bは、分散型ネットワークとして構築されたブロックチェーンにアクセスして、ユーザデータベース2hに記憶された仮想通貨アドレスに対応する取引の取引情報を取得する。取引データベース2iは、ブロックチェーン情報取得部2bによって取得された取引情報を取引毎に記憶する。レート情報取得部2cは、仮想通貨の換算レートをネットワークを介して取得する。仕訳処理部2eは、取引データベース2iから読み出された取引情報と、レート情報取得部2cによって取得された換算レートとに基づいて取引の仕訳処理を行う。
【選択図】図4
To enable automatic and efficient journaling of virtual currency-based transactions.
A user database 2h stores a virtual currency address unique to each user who performs a virtual currency-based transaction. The block chain information acquisition unit 2b accesses the block chain constructed as a distributed network, and acquires transaction information of a transaction corresponding to the virtual currency address stored in the user database 2h. The transaction database 2i stores the transaction information acquired by the block chain information acquisition unit 2b for each transaction. The rate information acquisition unit 2c acquires the conversion rate of the virtual currency via the network. The journal processing unit 2e performs a transaction journaling process based on the transaction information read from the transaction database 2i and the conversion rate acquired by the rate information acquisition unit 2c.
[Selection] Figure 4
Description
本発明は、自動仕訳サーバおよび自動仕訳プログラムに係り、特に、仮想通貨ベースの取引の仕訳に関する。 The present invention relates to an automatic journal server and an automatic journal program, and more particularly to a journal for a virtual currency-based transaction.
近年、ビットコイン、リップル、イーサリアム、モナーコインなどの各種の仮想通貨が急速に普及しつつあり、仮想通貨ベースの取引も今後急激に増大することが見込まれる。例えば、非特許文献1には、仮想通貨の会計処理について記載されている。この記載によれば、期末における仮想通貨の評価に関する会計処理として、仮想通貨の活発な市場が存在する場合、市場価格に基づく価額をもって仮想通貨の賃借対照表価額とし、帳簿価額との差額は当期の損益として処理するものとされている。また、仮想通貨の売買損益は、この仮想通貨の売買の合意が成立した時点を基準として、財務諸表に反映させる方法を採用するものとされている。
In recent years, various virtual currencies such as Bitcoin, Ripple, Ethereum, and Monar Coin are rapidly spreading, and virtual currency-based transactions are expected to increase rapidly in the future. For example, Non-Patent
また、仮想通貨に関するものではないが、特許文献1には、有価証券および土地内訳明細書を作成する際、時価評価額との差額を評価損益として把握して時価情報として作成可能にする財務会計システムが開示されている。 具体的には、まず、企業の保有する有価証券および土地の時価情報を提供するWebサイトをそれぞれ登録しておく。つぎに、有価証券内訳明細書および土地内訳明細書の作成に際して、有価証券の証券コードおよび土地の名称の所在地に基づき、それぞれWebサイトから時価が取得される。そして、その時価総額および評価差額が自動的に計算される。
In addition, although not related to virtual currency,
しかしながら、従来の自動仕訳サーバは、仮想通貨の急速な普及にもかかわらず、仮想通貨ベースの取引には対応できていないのが現状である。 However, the current automatic journal server is not capable of dealing with virtual currency-based transactions, despite the rapid spread of virtual currency.
そこで、本発明の目的は、仮想通貨ベースの取引の仕訳を自動的かつ効率的に行うことを可能にすることである。 Accordingly, an object of the present invention is to enable automatic and efficient journaling of virtual currency-based transactions.
かかる課題を解決すべく、第1の発明は、ユーザデータベースと、ブロックチェーン情報取得部と、取引データベースと、レート情報取得部と、仕訳依頼受付部と、仕訳処理部とを有し、仮想通貨ベースの取引の仕訳を行う自動仕訳サーバを提供する。ユーザデータベースは、仮想通貨ベースの取引を行うユーザ毎に固有の仮想通貨アドレスを記憶する。ブロックチェーン情報取得部は、分散型ネットワークとして構築されたブロックチェーンにアクセスして、ユーザデータベースに記憶された仮想通貨アドレスに対応する取引の取引情報を取得する。取引データベースは、ブロックチェーン情報取得部によって取得された取引情報を取引毎に記憶する。レート情報取得部は、仮想通貨の換算レートをネットワークを介して取得する。仕訳依頼受付部は、特定のユーザから取引の仕訳依頼を受け付けた場合、当該特定のユーザのクライアントからネットワークを介して取得した仕訳依頼に係る取引の取引情報を前記取引データベースに記憶する。仕訳処理部は、取引データベースから読み出された取引情報と、レート情報取得部によって取得された換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う。仕訳処理部は、仕訳依頼に係る取引について、仕訳依頼受付部によって取得された取引情報と、ブロックチェーン情報取得部によって取得された取引情報とが整合した場合、上記仕訳処理を行う。 In order to solve such a problem, the first invention includes a user database, a block chain information acquisition unit, a transaction database, a rate information acquisition unit, a journal request reception unit, and a journal processing unit, Provide an automatic journal server that journals transactions based. The user database stores a virtual currency address unique to each user who performs a virtual currency-based transaction. The block chain information acquisition unit accesses the block chain constructed as a distributed network and acquires transaction information of a transaction corresponding to the virtual currency address stored in the user database. The transaction database stores the transaction information acquired by the block chain information acquisition unit for each transaction. The rate information acquisition unit acquires the conversion rate of the virtual currency via the network. When the journal request accepting unit accepts a transaction journal request from a specific user, the journal request receiving unit stores the transaction information of the transaction related to the journal request acquired from the client of the specific user via the network in the transaction database. The journal processing unit performs a journal processing of a virtual currency-based transaction based on the transaction information read from the transaction database and the conversion rate acquired by the rate information acquisition unit. When the transaction information acquired by the journal request accepting unit and the transaction information acquired by the block chain information acquiring unit match for the transaction relating to the journal request, the journal processing unit performs the journal processing.
ここで、第1の発明において、上記仕訳処理部は、上記仕訳処理として、仮想通貨の入金および出金に関する取引の仕訳処理と、仮想通貨の出金に伴う差損益処理とを行うことが好ましい。この場合、上記仕訳処理部は、上記差損益処理で用いられる計算法として予め用意された複数の計算法のうち、ユーザによって選択されたものを用いて、差損益処理を行ってもよい。 Here, in the first invention, it is preferable that the journal processing unit performs, as the journal processing, a journal processing for transactions relating to deposit and withdrawal of virtual currency and a profit / loss processing associated with withdrawal of virtual currency. . In this case, the journal processing unit may perform the profit / loss process using a method selected by the user from among a plurality of calculation methods prepared in advance as the calculation method used in the profit / loss process.
第1の発明において、上記ブロックチェーン情報取得部は、ブロックチェーンに定期的にアクセスして、仮想通貨アドレスに対応する新規な取引の取引情報を取引データベースに追加することが好ましい。この場合、上記仕訳処理部は、取引データベースに追加された新規な取引について仕訳処理を行うことが望ましい。また、この場合、上記仕訳処理部は、新規な取引の仕訳を一律に売買とみなして処理してもよい。 In the first invention, it is preferable that the block chain information acquisition unit periodically accesses the block chain and adds transaction information of a new transaction corresponding to the virtual currency address to the transaction database. In this case, it is desirable that the journal processing unit performs journal processing for a new transaction added to the transaction database. In this case, the journal processing unit may process the journals of new transactions as if they were sold and sold.
第1の発明において、上記仕訳処理部は、仕訳依頼に係る取引情報に応じて取引の勘定科目を決定してもよい。 In the first invention, the journal processing unit may determine a transaction account item according to transaction information relating to a journal request.
第2の発明は、仮想通貨ベースの取引を行うユーザ毎に固有の仮想通貨アドレスを記憶するユーザデータベースと、分散型ネットワークとして構築されたブロックチェーンより取得された取引情報を取引毎に記憶する取引データベースとを有するコンピュータにおいて実行され、仮想通貨ベースの取引の仕訳を行う自動仕訳プログラムを提供する。このプログラムは、第1のステップから第4のステップを有する処理をコンピュータに実行させる。第1のステップでは、ブロックチェーンにアクセスして、ユーザデータベースに記憶された仮想通貨アドレスに対応する取引の取引情報を取得して、取引データベースに記憶する。第2のステップでは、仮想通貨の換算レートをネットワークを介して取得する。第3のステップでは、特定のユーザから取引の仕訳依頼を受け付けた場合、この特定のユーザのクライアントからネットワークを介して取得した仕訳依頼に係る取引の取引情報を取引データベースに記憶する。第4のステップでは、取引データベースから読み出された取引情報と、換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う。ここで、第4のステップは、仕訳依頼に係る取引について、第3のステップによって取得された取引情報と、第1のステップによって取得された取引情報とが整合した場合、上記仕訳処理を行う。 The second invention relates to a user database for storing a virtual currency address unique to each user who performs a virtual currency-based transaction, and a transaction for storing transaction information acquired from a block chain constructed as a distributed network for each transaction. An automatic journalizing program that executes on a computer having a database and performs a journal of a virtual currency-based transaction is provided. This program causes a computer to execute processing having first to fourth steps. In the first step, the block chain is accessed, transaction information of a transaction corresponding to the virtual currency address stored in the user database is acquired, and stored in the transaction database. In the second step, the virtual currency conversion rate is acquired via the network. In the third step, when a transaction journal request is received from a specific user, transaction information related to the journal request obtained from the client of the specific user via the network is stored in the transaction database. In the fourth step, the transaction processing of the virtual currency based transaction is performed based on the transaction information read from the transaction database and the conversion rate. Here, the fourth step performs the above-described journal entry processing when the transaction information acquired in the third step and the transaction information acquired in the first step match for the transaction related to the journal request.
ここで、第2の発明において、上記第4のステップは、上記仕訳処理として、仮想通貨の入金および出金に関する取引の仕訳処理と、仮想通貨の出金に伴う差損益処理とを行うステップであることが好ましい。この場合、上記第4のステップは、差損益処理で用いられる計算法として予め用意された複数の計算法のうち、ユーザによって選択されたものを用いて、差損益処理を行うステップであってもよい。 Here, in the second invention, the fourth step is a step of performing, as the journalizing process, a journalizing process for transactions relating to deposit and withdrawal of virtual currency and a profit / loss process associated with withdrawal of virtual currency. Preferably there is. In this case, the fourth step is a step of performing the profit / loss process using a method selected by the user from among a plurality of calculation methods prepared in advance as the calculation method used in the profit / loss process. Good.
第2の発明において、上記第1のステップは、ブロックチェーンに定期的にアクセスして、仮想通貨アドレスに対応する新規な取引の取引情報を取引データベースに追加するステップであることが好ましい。この場合、上記第4のステップは、取引データベースに追加された新規な取引について仕訳処理を行うステップであることが望ましい。また、この場合、上記第4のステップは、新規な取引の仕訳を一律に売買とみなして処理するステップであってもよい。 In the second invention, the first step is preferably a step of periodically accessing the block chain and adding transaction information of a new transaction corresponding to the virtual currency address to the transaction database. In this case, it is desirable that the fourth step is a step of performing a journalizing process for a new transaction added to the transaction database. Further, in this case, the fourth step may be a step in which a new transaction journal is uniformly regarded as a sale.
第2の発明において、上記第4のステップは、仕訳依頼に係る取引情報に応じて取引の勘定科目を決定するステップであってもよい。 2nd invention WHEREIN: The said 4th step may be a step which determines the account item of transaction according to the transaction information which concerns on a journal request.
本発明によれば、仮想通貨ベースの取引を行うユーザ毎の仮想通貨アドレスを記憶しておき、これをキーにブロックチェーンを検索することで、ユーザが行った取引に関する取引情報を取得・管理する。そして、この取引情報と、仮想通貨の換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を自動的に行う。これにより、ユーザが取引の仕訳を依頼する毎に、自己の仮想通貨アドレスの送信やブロックチェーンへのアクセスなどをユーザ自身が行う必要がないので、ユーザの利便性およびシステムの効率性に優れた自動仕訳サービスを実現できる。 According to the present invention, a virtual currency address for each user who performs a virtual currency-based transaction is stored, and a block chain is searched using this as a key to acquire / manage transaction information related to a transaction performed by the user. . Then, based on this transaction information and the conversion rate of the virtual currency, the journal processing of the transaction based on the virtual currency is automatically performed. This eliminates the need for the user himself / herself to send his / her virtual currency address and access to the blockchain each time he / she requests a journal for a transaction, thus improving user convenience and system efficiency. Automatic journalizing service can be realized.
図1は、本実施形に係る自動仕訳ネットワークシステムの全体図である。この仕訳ネットワークシステム1は、仕訳サーバ2と、ユーザが操作する多数のクライアント3と、ブロックチェーン4と、仮想通貨取引所5とが、インターネットなどのネットワークを介して接続されている。仕訳サーバ2は、クライアント3から「取引」の仕訳依頼を受信した場合、この「取引」の仕訳処理を自動的に行い、仕訳結果をクライント2に送信する。本実施形態の特徴は、実通貨ベースで行われた取引のみならず、ビットコインなどに代表される仮想通貨ベースで行われた取引についても対応している点にある。仮想通貨ベースの取引の仕訳処理に際して、仕訳サーバ2は、ブロックチェーン4および仮想通貨取引所5に必要に応じてアクセスする。ブロックチェーン4は、分散型ネットワークとして構築されている。また、仮想通貨取引所5(ネットワーク上のコンピュータ)は、仮想通貨の換算レートに関する情報を提供する。
FIG. 1 is an overall view of an automatic journal network system according to this embodiment. In the
本明細書において、「取引」とは、企業等が所有する財産(資産,負債)、資本、収益、費用の増加・減少を伴う簿記上の取引や、簿記上の取引以外においても、記帳(記録)に必要な取引などを総称する意味で用いられる。 In this specification, “transaction” refers to bookkeeping transactions other than bookkeeping transactions that involve increases / decreases in assets (assets, liabilities), capital, revenue, and expenses owned by companies, etc. It is used to collectively refer to transactions necessary for recording.
ここで、図2に基づき、ブロックチェーンの概念について説明する。ビットコインなどの仮想通貨は、取引履歴、すなわち、仮想通貨が今まで経てきた個々の取引(トランザクション)の集合体として表現される。それぞれのトランザクションは、前のトランザクションのハッシュ値や新たな所有者の公開鍵を含み、元の所有者の暗号鍵によってデジタル署名されている。全てのトランザクションに関する情報は、P2Pネットワーク全体で共有されている。このようにトランザクションを表現することで、元の所有者の許可なく、通貨を本人以外が勝手に譲渡することはできず、また、第三者は、通貨の譲渡を客観的に確認できるといった利点を有する。 Here, the concept of the block chain will be described with reference to FIG. A virtual currency such as bitcoin is expressed as a transaction history, that is, a collection of individual transactions (transactions) through which the virtual currency has passed. Each transaction includes the hash value of the previous transaction and the public key of the new owner and is digitally signed with the original owner's encryption key. Information about all transactions is shared throughout the P2P network. By expressing the transaction in this way, it is not possible to transfer the currency without permission of the original owner, and the third party can objectively confirm the transfer of the currency. Have.
図3は、トランザクションにおけるデータ構造(取引情報)の説明図である。トランザクションのデータ構造は、取引日のほかに、「出力 (出金する通貨)」、「入力 (入金に用いる通貨)」などを有している。送金には、相手に渡す通貨(額面)および宛先が必要であるが、それらを表現したものが出力である。自分に宛てられた通貨を使う (=誰かに送金する) ためには、過去のトランザクションの出力を参照しなければならず、それが今回のトランザクションにおける入力に相当する。一つのトランザクションにおいて、出力および入力はそれぞれ複数指定できる。任意の額の送金を行うためには、過去の自分宛のトランザクションの出力を集め、これから行う取引の入力として指定する必要がある。 FIG. 3 is an explanatory diagram of a data structure (transaction information) in a transaction. In addition to the transaction date, the data structure of the transaction has “output (currency for withdrawal)”, “input (currency used for deposit)”, and the like. For remittance, the currency (face value) to be sent to the other party and the destination are required, but the output is a representation of them. To use the currency addressed to you (= send money to someone), you must refer to the output of a past transaction, which corresponds to the input in the current transaction. Multiple outputs and inputs can be specified for each transaction. In order to send an arbitrary amount of money, it is necessary to collect the output of past transactions addressed to itself and specify it as an input for a future transaction.
なお、図1に示した構成では、ブロックチェーン4中の情報を提供する主体と、仮想通貨取引所5の運営主体とを別個のものとしているが、両者は同一であっても構わない。
In the configuration shown in FIG. 1, the entity providing the information in the
図4は、仕訳ネットワークシステム1の中核をなす仕訳サーバ2の構成図である。この仕訳サーバ2は、制御部2aと、ブロックチェーン情報取得部2bと、レート情報取得部2cと、仕訳依頼受付部2dと、仕訳処理部2eと、各種データベース2h〜2jとを主体に構成されている。制御部2aは、後述する取引の一括処理および個別処理を含めて、仕訳サーバ2の全体的な制御を司る。ブロックチェーン取得部2bは、ネットワーク上のブロックチェーン4に定期的またはユーザから取引の仕訳依頼を受け付ける毎にアクセスして、所定の仮想通貨アドレスに対応する取引の取引情報を取得する。レート情報取得部2cは、ネットワーク上の仮想通貨取引所5にアクセスして、所望の日における仮想通貨の換算レートを取得する。仕訳依頼受付部2dは、特定のユーザ(クライアント3)から取引の仕訳依頼を受け付け、このユーザのクライアントからネットワークを介して取得した仕訳依頼に係る取引の取引情報を取引データベース2iに記憶する。
FIG. 4 is a configuration diagram of the
仕訳処理部2eは、取引データベース2iから読み出された取引情報と、レート情報取得部2cによって取得された換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う。この仕訳処理部2eは、仮想通貨ベースの取引に固有の機能として、取引認証部2fおよび差損益算出部2gを備えている。取引認証部2fは、仕訳依頼を受けた取引の個別処理時のみ用いられ、仕訳依頼受付部2dによって取得された取引情報と、ブロックチェーン情報取得部2bによって取得された取引情報とが整合するかどうかを認証する。両者が整合する場合には、仕訳依頼に係る取引の個別処理が行われ、両者が整合しない場合には、個別処理が行われることなく、エラー通知がユーザ(依頼者)に送信される。また、差損益算出部2gは、取引の一括処理時および個別処理時の双方で用いられ、仮想通貨の出金に伴う差損益(実通貨ベース)を算出する。仕訳処理部2eによる仕訳結果は、仕訳実績として仕訳データベース2jに記憶される。
The journal processing unit 2e performs the journal processing of the virtual currency-based transaction based on the transaction information read from the
図5は、ユーザデータベース2hの論理構成図である。ユーザデータベース2hは、それぞれの「ユーザ」に関する情報を一元的に記憶・管理するものであるが、仮想通貨ベースの取引の仕訳処理との関係でいえば、特に、「仮想通貨アドレス」、「APIキー1」、「APIキー2」、「計算法」が重要である。これらは、ユーザによる所定の設定手順を経て、仕訳サーバ2側に登録される。ここで、「仮想通貨アドレス」は、仮想通貨を利用する際の口座番号に相当し、仮想通貨の利用者毎に固有の記号列が割り当てられている。ビットコインの場合、仮想通貨アドレス(ビットコインアドレス)は、1または3から始まる27〜34文字の英数字によって構成され、公開鍵から生成される。仕訳サーバ2(ブロックチェーン情報取得部2b)は、ブロックチェーン4から例えばユーザ「A」の取引情報を取得しようとする場合、このユーザ「A」に対応する仮想通貨アドレス「a」をブロックチェーン4側に送信する。
FIG. 5 is a logical configuration diagram of the user database 2h. The user database 2h stores and manages information related to each “user” in a centralized manner. In particular, the “virtual currency address”, “API” is related to the journal processing of virtual currency-based transactions. “
「APIキー1」は、ブロックチェーン4へのアクセスの認証を行うために、ブロックチェーン4側より発行されたユーザ固有の認証キーである。仕訳サーバ2(ブロックチェーン情報取得部2b)は、ブロックチェーン4から例えばユーザ「A」の取引情報を取得しようとする場合、このユーザ「A」に対応するAPIキー1として「a1」をブロックチェーン4側のAPI(Application Programming Interface)に送信する。なお、ブロックチェーン4のアクセス認証が必要ない場合には、APIキー1は不要である。
The “
「APIキー2」は、仮想通貨取引所5へのアクセスの認証を行うために、仮想通貨取引所5側より発行されたユーザ固有の認証キーである。仕訳サーバ2(レート情報取得部2c)は、仮想通貨取引所5から例えばユーザ「A」の換算レートを取得しようとする場合、このユーザ「A」に対応するAPIキー2として「a2」を仮想通貨取引所5側のAPIに送信する。なお、仮想通貨取引所5へのアクセス認証が必要ない場合には、APIキー2は不要である。
The “
「計算法」は、差損益処理(払出単価計算)で用いられる計算法である。本実施形態では、複数の計算法が予め用意されており、ユーザによって選択されたものが用いられる。この計算法としては、(1)移動平均法、(2)総平均法、(3)最終仕入原価法、(4)個別法、(5)先入先出法、(6)売価還元法が存在する。上記(1)〜(2)は、有価証券および棚卸資産で使用される計算法であり、上記(3)〜(6)は、棚卸資産で使用される計算法である。これらの計算法の中から、システムの仕様として適宜組み合わせたものが選択肢としてユーザに提示される。ただし、計算法を選択できるのはサービス加入初年度に限るものとし、翌年度以降は初年度に選択した計算法を用いるものとする。 The “calculation method” is a calculation method used in the profit / loss processing (payout unit price calculation). In this embodiment, a plurality of calculation methods are prepared in advance, and the one selected by the user is used. This calculation method includes (1) moving average method, (2) gross average method, (3) final purchase cost method, (4) individual method, (5) first-in first-out method, and (6) selling price reduction method. Exists. The above (1) to (2) are calculation methods used for securities and inventory, and the above (3) to (6) are calculation methods used for inventory. Among these calculation methods, an appropriate combination of system specifications is presented to the user as an option. However, the calculation method can be selected only in the first year of service subscription, and the calculation method selected in the first year is used from the following year.
なお、仕訳サーバ2は、ユーザデータベース2hの「仮想通貨アドレス」として、1ユーザについて複数の仮想通貨アドレスを管理してもよい。これにより、仮想通貨の仕様として1ユーザに対する複数アドレスの割り当てを許容し、アドレスを動的に変更するような場合であっても対応可能となる。この場合、ユーザは、自己に割り当てられた新たな仮想通貨アドレスを仕訳サーバ2にその都度登録すればよい。また、ユーザの代わりに仕訳サーバ2が、予め登録されたAPIキーを用いて仮想通貨取引所5などにアクセスし、このユーザに関する新たな仮想通貨アドレスを取得した上で、ユーザデータベース2hに自動で登録(アップデート)するようにしてもよい。
The
図6は、取引データベース2iの論理構成図である。この取引データベース2iは、それぞれの取引に関する情報を一元的に記憶・管理するものであり、取引単位で設けられた多数の取引レコードによって構成されている。1つの取引レコードは、ユーザデータベース2hに紐付けられた「ユーザ」のほか、「取引情報A」、「取引情報B」、「仕訳」といったフィールドで構成されている。
FIG. 6 is a logical configuration diagram of the
ここで、「取引情報A」は、ブロックチェーン4より取得された取引情報(トランザクションに記述された情報)であり、具体的には、取引日、仮想通貨ベースの取引高(BTC)、入金/出金の区別、トランザクションID(ブロックチェーン4中の個々のトランザクションを識別するための識別情報)を含む。
Here, “transaction information A” is transaction information (information described in the transaction) acquired from the
「取引情報B」は、取引の仕訳依頼に係る取引情報(ユーザ入力情報)であり、具体的には、取引日、仮想通貨ベースの取引高(BTC)、入金/出金の区別を含む。また、「取引情報B」には、ユーザによって入力・指定された勘定科目が含まれていてもよい。「取引情報B」に勘定科目が含まれている場合、ユーザから仕訳依頼を受けた取引の仕訳結果にこの勘定科目が反映される(これがそのまま使用される。)。また、「取引情報B」は、ユーザから仕訳依頼を受けた取引についてだけ記述され、これを受けていない場合にはブランクとなる(一括処理時)。 “Transaction information B” is transaction information (user input information) related to a journal entry request for a transaction, and specifically includes a transaction date, a virtual currency-based transaction volume (BTC), and a deposit / withdrawal distinction. Further, the “transaction information B” may include an account item input / designated by the user. When the account item is included in the “transaction information B”, this account item is reflected in the journal entry result of the transaction for which the journal request is received from the user (this is used as it is). Further, “transaction information B” is described only for a transaction for which a journal entry request has been received from the user, and is blank when no transaction is received (during batch processing).
「仕訳ステータス」は、仕訳処理部2eによる仕訳処理が行われたか否かを管理するためのフラグであり、処理が行われた場合には「済」、処理が行われてない場合には「未済」に設定される。なお、仕訳サーバ2が一括処理および個別処理の一方だけを行う場合には「済」だけで足りるが、両方の処理を行う場合には「済」を細分化して、「済(一括)」、「済(個別)」として管理してもよい。
The “journal status” is a flag for managing whether or not the journal processing by the journal processing unit 2e has been performed, and “completed” when the processing is performed, and “no” when the processing is not performed. Set to "Not done". When the
なお、図6に示した取引レコードの構成はあくまで論理的なものであって、物理的な構成を示すものではない点に留意されたい。すなわち、「ユーザ」、「取引情報A」、「取引情報B」、「仕訳ステータス」のそれぞれ、または、この中の任意の組み合わせを複数のテーブルで個別に管理し、これらのテーブルを共通のID(例えば取引ID)で紐付けるようなデータ構造であっても、図示した取引レコードが果たす機能と何ら異なるところはなく、論理的に等価である。本明細書の「取引レコード」とは、物理的なデータ構造の如何を問わず、仕訳サーバ2が管理・処理を行う上で必要な情報を互いに関連付けるデータ構造を広く包含する概念で用いられる。その意味において、「データベース」とは、互いに関連付けられたテーブルなどの集合体として捉えることもできる。この点は、取引データベース2iのみならず、ユーザデータベース2hや仕訳データベース2jについても同様である。
It should be noted that the configuration of the transaction record shown in FIG. 6 is logical only and does not indicate a physical configuration. That is, each of “user”, “transaction information A”, “transaction information B”, “journal status”, or any combination thereof is individually managed in a plurality of tables, and these tables are shared by a common ID. Even if the data structure is linked with (for example, transaction ID), there is no difference from the function performed by the illustrated transaction record, and it is logically equivalent. The “transaction record” in the present specification is used in a concept that broadly includes a data structure that associates information necessary for the
図7は、仕訳サーバ2によって行われる取引の一括処理のフローチャートである。この一括処理や後述する個別処理も含めて、仕訳サーバ2において実行されるすべての処理は、仕訳サーバ2にコンピュータプログラム(自動仕訳プログラム)をインストールすることによって実行される。制御部2aは、毎時や毎日の如く定期的に本ルーチンを呼び出し、処理対象となる取引群をバッチ処理する。
FIG. 7 is a flowchart of batch processing of transactions performed by the journalizing
まず、ステップ1において、制御部2aは、ブロックチェーン4の検索対象を特定する。検索対象は、本サービスに加入しており、かつ、仮想通貨ベースの取引を行う者のすべて、すなわち、図5に示したユーザデータベース2hで管理されているすべて仮想通貨アドレスである。また、検索すべき期間としては、前回の一括処理時から現在の日時までである。なお、本サービスの新規加入した者を対象として、今までの取引情報を取得する場合、期間の指定なしで、このユーザの仮想通貨アドレスが検索対象となる。
First, in
ステップ2において、ブロックチェーン情報取得部2bは、ブロックチェーン4側のAPIに対して、ステップ1で特定された検索対象(仮想通貨アドレス等)を指定して、ブロックチェーン4の検索を依頼する。その際、ブロックチェーン4のアクセス認証が必要な場合には、依頼対象となるユーザに対応するAPIキー1がユーザデータベース2hから読み出され、ブロックチェーン4側のAPIに送信される。
In
ステップ3において、ブロックチェーン情報取得部2bは、ブロックチェーン4側のAPIから、検索依頼に係る取引(トランザクション)の取引情報を取得する。そして、ステップ4において、ブロックチェーン情報取得部2bは、制御部2aを介して、「新規な取引」に関する取引レコードを取引データベース2iに追加する。ここで、「新規な取引」とは、ブロックチェーン4より取得された取引のうち、取引データベース2iで管理されていない取引のことである。この取引レコードにおいて、「ユーザ」には、検索対象の仮想通貨アドレスに対応するユーザ名が記述される。「取引情報A」には、ブロックチェーン情報取得部2bによって取得された取引情報が記述される。そして、「仕訳ステータス」は「未済」にセットされる(図6参照)。なお、一括処理の場合、「取引情報B」はブランクのままである。ステップ4の処理によって、取引データベース2iの保持内容にとしてブロックチェーン4のそれが反映され、両者の整合性が担保される。
In
以下の処理は、仕訳ステータスが「未済」にセットされている取引レコード(以下「未済取引レコード」という。)のすべてに対して、処理対象を1つずつシフトしながら繰り返し行われる。 The following processing is repeatedly performed while shifting the processing target one by one for all transaction records whose journal status is set to “incomplete” (hereinafter referred to as “incomplete transaction record”).
まず、ステップ5において、仕訳処理部2eは、処理対象として、取引データベース2iから未済取引レコードを一つ読み出す。つぎに、ステップ7において、仕訳処理部2eは、処理対象となる未済取引レコードの「取引情報A」として記述された取引日の時点における換算レートを取得する。具体的には、仕訳処理部2eは、制御部2aを介してレート情報取得部2cに対して、取引日を指定して、その時点の換算レートを取得すべき旨を指示する。これに基づいて、レート情報取得部2cは、仮想通貨取引所5側のAPIに対して、指定された日付の換算レートの提供を依頼する。その際、仮想通貨取引所5のアクセス認証が必要な場合には、依頼対象となるユーザに対応するAPIキー1がユーザデータベース2hから読み出され、仮想通貨取引所5側のAPIに送信される。そして、レート情報取得部2cは、指定された日付の換算レートを仮想通貨取引所5より取得し、制御部2aを介して仕訳処理部2eにこれを転送する。
First, in
ステップ8において、仕訳処理部2eは、処理対象となる未済取引レコードの「取引情報A」と、ステップ7で取得された換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う。 In step 8, the journal processing unit 2 e performs the transaction processing of the virtual currency based transaction based on the “transaction information A” of the outstanding transaction record to be processed and the conversion rate acquired in step 7.
ステップ9において、未済取引レコードに係る取引が出金であるか否かが判断される。このステップ9の判断結果が肯定の場合、すなわち、出金取引の場合、仕訳処理部2eはステップ10の差損益処理を行う。これに対して、ステップ9の判断結果が否定の場合、すなわち、入金取引の場合、仕訳処理部2eはステップ10の差損益処理をスキップして、ステップ11に進む。 In step 9, it is determined whether or not the transaction relating to the outstanding transaction record is a withdrawal. If the determination result in step 9 is affirmative, that is, in the case of a withdrawal transaction, the journal entry processing unit 2e performs the profit / loss process in step 10. On the other hand, if the determination result in step 9 is negative, that is, in the case of a deposit transaction, the journal entry processing unit 2e skips the difference profit / loss process in step 10 and proceeds to step 11.
図10は、出金取引について行われる差損益処理のフローチャートであり、ステップ10からサブルーチンとして呼び出される。まず、ステップ20において、差損益算出部2gは、ユーザデータベース2hを参照して、処理対象となる未済取引レコードに係るユーザによって選択された「計算法」を特定する。つぎに、差損益算出部2gは、この計算法によって仮想通貨の平均単価を算出し(ステップ21)、この平均単価を用いて実通貨ベースの差損益を算出する(ステップ22)。これによって、本サブルーチンを抜けてステップ10に戻る。 FIG. 10 is a flowchart of the profit / loss process performed for the withdrawal transaction, which is called from step 10 as a subroutine. First, in step 20, the profit / loss calculation unit 2 g refers to the user database 2 h and specifies the “calculation method” selected by the user related to the outstanding transaction record to be processed. Next, the profit / loss calculation unit 2g calculates the average unit price of the virtual currency by this calculation method (step 21), and calculates the profit / loss difference based on the actual currency using the average unit price (step 22). As a result, the process exits from this subroutine and returns to step 10.
再び図7を参照すると、ステップ11において、仕訳処理部2eは、ステップ8の仕訳処理(および、出金取引時にはステップ10の差損益処理)の結果を仕訳データベース2jに反映する。そして、処理対象に係る未済取引レコードの「仕訳ステータス」を「未済」から「済」(または「済(一括)」)に変更することによって、処理対象となる取引に関する処理が完了する。
Referring to FIG. 7 again, in step 11, the journal processing unit 2e reflects the result of the journal processing in step 8 (and the profit / loss processing in step 10 at the time of withdrawal transaction) in the
ステップ12において、すべての未済取引レコードの処理が終了したか否かが判断される。ステップ12の判定結果が否定の場合、処理対象を次の未済取引レコードに移行した上で(ステップ13)、新たな処理対象(未済取引レコード)に対してステップ5〜11の処理が行われる。そして、以上の処理が繰り返され、最後の処理対象の処理が終了した場合、ステップ12の判断結果が否定から肯定に切り替る。これによって、一連の処理が終了して本ルーチンを抜ける。
In step 12, it is determined whether or not processing of all outstanding transaction records has been completed. If the determination result of step 12 is negative, the process target is shifted to the next unfinished transaction record (step 13), and then the processes of
以上の一括処理について、図9に示すような仮想通貨の入出金を例に説明する。同図は、ブロックチェーン4の検索結果として、あるユーザに関して、取引日が異なる8つの仮想通貨ベースの取引(単位=BTC)が取得されたケースを示している(ステップ3)。このケースでは、図10に示すように、8つの取引日のそれぞれについて換算レートが取得される(ステップ7)。例えば、「2017/11/01」の時点で、1(BTC)当たりのレートは「500,000(JPY)」(JPY=日本円)である。 The above collective processing will be described by taking as an example the deposit and withdrawal of virtual currency as shown in FIG. This figure shows a case where eight virtual currency-based transactions (unit = BTC) having different transaction dates are acquired for a certain user as a search result of the block chain 4 (step 3). In this case, as shown in FIG. 10, the conversion rate is acquired for each of the eight trading days (step 7). For example, at the time of “2017/11/01”, the rate per 1 (BTC) is “500,000 (JPY)” (JPY = Japanese yen).
この場合、図11に示すように、「2017/11/18」、「2017/11/28」、「2017/12/08」の各出金取引について、「出金(平均単価)および「差損益」が算出される(ステップ10)。ここで、「平均単価」は、移動平均に基づき算出された値を用いている。「出金(平均単価)」は、(仮想通貨の出金額)×(平均単価)として算出される。また、「差損益」は、(仮想通貨の出金額)×(取引日単価−平均単価)として算出される。例えば、「2017/11/18」付の出金取引(出金額=0.2(BTC))に着目した場合、「出金(平均単価)」は508,000×0.2=101,600(JPY)、「差損益」は0.2×(560,000−508,000)=10,400(JPY)となる。 In this case, as shown in FIG. 11, for each withdrawal transaction of “2017/11/18”, “2017/11/28” and “2017/12/08”, “withdrawal (average unit price) and“ difference ” "Profit and loss" is calculated (step 10). Here, the “average unit price” uses a value calculated based on the moving average. “Withdrawal (average unit price)” is calculated as (withdrawal amount of virtual currency) × (average unit price). Further, the “gain / loss” is calculated as (virtual currency withdrawal amount) × (transaction day unit price−average unit price). For example, when paying attention to a withdrawal transaction with “2017/11/18” (withdrawal amount = 0.2 (BTC)), “withdrawal (average unit price)” is 508,000 × 0.2 = 101,600 (JPY), “gain / loss” Is 0.2 x (560,000-508,000) = 10,400 (JPY).
図12は、取引の一括処理による仕訳結果を示す図である。ブロックチェーン4から取得された取引情報のみに基づく仕訳では、取引の具体的な内容が不明なので、本来の取引の仕訳および差損益の仕訳を一律に売買とみなして処理する。すなわち、入金取引については、借方を仮想通貨、貸方を普通預金として計上される。また、出金取引については、入金取引とは逆に、借方を普通預金、貸方を仮想通貨として計上される。さらに、出金取引時に生じる差損益については、借方を普通預金、借方を為替通貨為替差益として計上される。この仕訳結果は、仕訳データベース2jに反映される(ステップ11)
FIG. 12 is a diagram showing a journal entry result by a batch processing of transactions. In the journal based only on the transaction information acquired from the
図13は、仕訳サーバ2によって行われる取引の個別処理のフローチャートである。制御部2aは、仕訳依頼受付部2dを介して、ユーザ側のクライアント3から取引の仕訳依頼を受け付けた場合、本ルーチンを呼び出し、仕訳依頼に係る取引について個別処理する。
FIG. 13 is a flowchart of individual transaction processing performed by the journalizing
本フローチャートが図7のそれと大きく相違する点は、第1に、仕訳依頼に係る取引のみを処理対象とするため、図7に示したステップ12およびステップ13が存在しないことである。仕訳依頼に係る取引が複数存在する場合には、それぞれの取引に対して個別処理が複数回行われる。第2に、図7に示したステップ5とステップ7との間にステップ6が存在することである。以下、図7のフローチャートとの相違点を重点的に説明し、それ以外の共通点については同一のステップ番号を付して、ここでの説明を省略または簡略化する。
The main difference between this flowchart and that of FIG. 7 is that, since only transactions related to journal requests are processed, step 12 and step 13 shown in FIG. 7 do not exist. When there are a plurality of transactions related to the journal request, individual processing is performed a plurality of times for each transaction. Second, step 6 exists between
まず、ステップ1において、制御部2aは、ブロックチェーン4の検索対象を特定する。ここで、検索対象となるのは、取引の仕訳を依頼したユーザ(例えば「A」)の仮想通貨アドレスである。制御部2aは、図5に示したユーザデータベース2hを参照して、このユーザAの仮想通貨アドレス「a」を特定する。ステップ2〜3を経て、ブロックチェーン4の検索結果として、仮想通貨アドレスaに関する取引(トランザクション)の取引情報が取得される。
First, in
ステップ4において、取引データベース2iに取引レコードが新規に追加される。この新規な取引レコードにおいて、「ユーザ」には、取引の仕訳を依頼したユーザAが記述される。「取引情報A」には、ブロックチェーン情報取得部2bによって取得された取引情報が記述される。また、「取引情報B」には、仕訳依頼受付部2dによって取得された取引情報が記述される。ユーザAは、仕訳サーバ2に仕訳を依頼する際、必要情報として取引の取引情報を送信することになっており、これが「取引情報B」となる。そして、「仕訳ステータス」は「未済」にセットされる。
In
なお、定期的に行われる一括処理(バッチ処理)の頻度次第では、個別処理時において、仕訳依頼に係る取引レコードが既に生成済みであることが想定される。この場合には、取引レコードを新規に追加することなく、既に存在する該当レコードにおける「取引情報B」に取引情報が記述される。 Note that, depending on the frequency of the batch processing (batch processing) performed periodically, it is assumed that the transaction record related to the journal request has already been generated in the individual processing. In this case, the transaction information is described in “transaction information B” in the existing record without newly adding a transaction record.
ステップ5において、仕訳処理部2eは、処理対象として、取引データベース2iから仕訳依頼に係るユーザAの取引レコードを読み出す。
In
ステップ6において、取引認証部2fは、取引レコードに記述された「取引情報A」と「取引情報B」とを比較して、両者の内容が整合しているか否かを判断する。具体的には、取引主体(ユーザA)が一致すること、取引日が一致すること、および、取引高が一致することが認証される。ただし、取引日の一致については、ブロックチェーン4へのトランザクションの組込時と、取引の約定日との間に若干のタイムラグ(例えば10分程度)が存在することを考慮すべきである。両者の内容が整合している場合には、ステップ7に進んで処理が続行される。これに対し、両者が整合していない場合には、ユーザに対してエラー通知を送信して(ステップ14)、本ルーチンを抜ける。このような取引内容の認証を行うことで、ユーザの誤入力を防止でき、ブロックチェーン4より取得した取引情報との整合性を確実に担保することができる。
In step 6, the transaction authentication unit 2 f compares “transaction information A” and “transaction information B” described in the transaction record, and determines whether or not the contents are consistent. Specifically, it is authenticated that the transaction subject (user A) matches, the transaction date matches, and the transaction amount matches. However, regarding the coincidence of transaction dates, it should be taken into account that there is a slight time lag (for example, about 10 minutes) between the transaction incorporation into the
ステップ7〜11において、取引の仕訳処理と差損益処理とが行われ、仕訳結果が仕訳データベース2jに反映される。そして、処理対象に係る取引レコードの「仕訳ステータス」を「未済」から「済」(または「「済(一括)」から「済(個別)」)に変更することによって、処理対象となる取引に関する処理が完了する。
In steps 7 to 11, transaction journal processing and profit / loss processing are performed, and the journal results are reflected in the
取引の個別処理では、一括処理の場合とは異なり、取引の具体的な内容が既知であるため、取引の仕訳内容(勘定科目)については、ユーザによって入力された取引情報Bの内容に応じて決定される。図14は、取引の個別処理による仕訳結果を示す図である。取引の仕訳依頼に際してユーザが入力した取引情報に勘定科目(例えば、出金=「仕入」、入金=「売上」)が含まれている場合、仕訳結果の勘定科目はこれに決定される。具体的には、入金取引については、借方を仮想通貨、貸方を売上高として計上される。また、出金取引については、借方を仕入高、貸方を仮想通貨として計上される。さらに、出金取引時に生じる差損益(約定日時点)については、借方を仮想通貨、借方を仮想通貨為替差益として計上される。この仕訳結果は、仕訳データベース2jに反映される(ステップ11)。
In the individual transaction processing, unlike the case of collective processing, the specific content of the transaction is known. Therefore, the transaction journal content (account item) depends on the content of the transaction information B input by the user. It is determined. FIG. 14 is a diagram illustrating a journal entry result by individual transaction processing. If the account information (for example, withdrawal = “purchase”, receipt = “sales”) is included in the transaction information input by the user at the time of the transaction journal request, the account item of the journal entry result is determined. Specifically, for deposit transactions, the debit is recorded as virtual currency and the credit is recorded as sales. For withdrawal transactions, the debit is recorded as purchase amount and the credit is recorded as virtual currency. In addition, the gains and losses that occur during withdrawal transactions (as of the execution date) are recorded as debit as virtual currency and debit as virtual currency exchange gain. This journal result is reflected in the
本実施形態では、個別処理の仕訳結果が一括処理の仕訳結果よりも優先される。すなわち、「2017/11/28」、「2017/12/08」、「2017/12/12」の3つの取引について、一律に売買とみなした仕訳結果(図11参照)が、個々の取引内容を反映した仕訳結果に変更される。このような仕訳結果のアップデートを行うことによって、ユーザから仕訳依頼を受けた取引に関して、ブロックチェーン4との整合性を担保しつつ、きめ細かな仕訳を行うことができる。
In the present embodiment, the journal result of individual processing has priority over the journal result of batch processing. In other words, for the three transactions “2017/11/28”, “2017/12/08”, and “2017/12/12”, the journal results (see Fig. 11) that are considered to be sold and sold are the contents of each transaction. Is changed to a journal entry result that reflects By updating such journal entries, it is possible to perform fine journaling while ensuring consistency with the
なお、取引の仕訳依頼に際してユーザが入力した取引情報に勘定科目が含まれていない場合、機械学習などを用いて、ユーザ入力の取引情報に適した勘定科目を自動的に決定してもよい。例えば、本出願人の特許である特許第6161229号公報には、教師あり学習によって自己が有する関数の内部パラメータが調整された学習器を用いて、取引情報に適した勘定科目を出力する自動仕訳システムが記載されている。 In addition, when the account information is not included in the transaction information input by the user at the time of the transaction journal request, an account item suitable for the user-input transaction information may be automatically determined using machine learning or the like. For example, Japanese Patent No. 6161229, which is a patent of the present applicant, discloses an automatic journal that outputs an account item suitable for transaction information using a learning device in which internal parameters of a function that the user has are adjusted by supervised learning. The system is described.
このように、本実施形態によれば、仮想通貨ベースの取引を行うユーザ毎の仮想通貨アドレスを記憶しておき、これをキーにブロックチェーン4を検索することで、ユーザが行った取引に関する取引情報を取得・管理する。そして、この取引情報と、仮想通貨の換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を自動的に行う。これにより、ユーザが取引の仕訳を依頼する毎に、自己の仮想通貨アドレスの送信やブロックチェーン4へのアクセスなどをユーザ自身が行う必要がないので、ユーザの利便性およびシステムの効率性に優れた自動仕訳サービスを実現できる。
Thus, according to this embodiment, the virtual currency address for every user who performs a virtual currency-based transaction is stored, and the
また、本実施形態によれば、取引の仕訳処理として、仮想通貨の入金および出金に関する取引の仕訳処理のみならず、仮想通貨の出金に伴う差損益処理も併せて行うことで、ユーザ取っての利便性をより高めることができる。その際、差損益処理で用いられる計算法をユーザが選択できるようにすれば、ユーザのニーズに的確に応えることができる。 In addition, according to the present embodiment, as transaction journaling processing, not only transaction journaling processing related to virtual currency deposit and withdrawal, but also profit / loss processing associated with virtual currency withdrawal is performed together. The convenience can be further improved. At that time, if the user can select the calculation method used in the profit / loss processing, the user's needs can be accurately met.
また、本実施形態によれば、定期的なバッチ処理によって、ユーザデータベース2hに登録されているユーザに関する取引の取引情報をブロックチェーン情報取得部2bより取得し、これらの取引を一括処理することで、大量の取引を効率的かつ高速に処理することができる。 In addition, according to the present embodiment, transaction information on transactions related to users registered in the user database 2h is acquired from the block chain information acquisition unit 2b by periodic batch processing, and these transactions are collectively processed. A large amount of transactions can be processed efficiently and at high speed.
また、本実施形態によれば、ユーザからの仕訳依頼に基づいて取引の個別処理に行うことで、ユーザ入力の取引内容を仕訳結果にきめ細かく反映することができる。その際、仕訳依頼受付部2dによって取得された取引情報と、ブロックチェーン情報取得部2bによって取得された取引情報との整合性をチェックすることで、ユーザの誤入力を防止でき、ブロックチェーン4より取得した取引情報との整合性を確実に担保することができる。 Further, according to the present embodiment, by performing the transaction individual processing based on the journal request from the user, it is possible to finely reflect the transaction content input by the user in the journal result. At that time, by checking the consistency between the transaction information acquired by the journal request accepting unit 2d and the transaction information acquired by the block chain information acquiring unit 2b, it is possible to prevent an erroneous input by the user. Consistency with the acquired transaction information can be reliably ensured.
さらに、本実施形態によれば、仕訳データ2jに保持された仕訳結果(仕訳履歴)を活用し、例えば図15に示すように、期末の評価替えの際は評価益の仕訳を作成することで、ユーザの個別の依頼(決算の評価替え処理など)から会計帳簿を提供することもできる。
Furthermore, according to the present embodiment, by utilizing the journal result (journal history) held in the
なお、上述した実施形態では、取引で用いられる仮想通貨が単一であることを前提に説明したが、本発明はこれに限定されるものではなく、仮想通貨は複数種であっても適用可能である。この場合、ユーザデータベース2hにおいて、仮想通貨アドレス、APIキー1、APIキー2などの情報を仮想通貨の種類毎に管理すると共に、それぞれの仮想通貨に対応した仮想通貨取引所5にアクセスすればよい。
In the above-described embodiment, the description is made on the assumption that there is a single virtual currency used in the transaction. However, the present invention is not limited to this, and the present invention is applicable even if there are multiple types of virtual currency. It is. In this case, in the user database 2h, information such as the virtual currency address,
さらに、本発明は、上述した実施形態に係る自動仕訳システムとして捉えることができるほか、これを実現するために仕訳サーバ3において実行されるコンピュータプログラム(特に、図7,図8および図13のフローチャートをルーチンとして備えるもの)として捉えることもできる。
Furthermore, the present invention can be understood as an automatic journalizing system according to the above-described embodiment, and is also a computer program (particularly, flowcharts of FIGS. 7, 8, and 13) that is executed in the
1 自動仕訳ネットワークシステム
2 仕訳サーバ
2a 制御部
2b ブロックチェーン情報取得部
2c レート情報取得部
2d 仕訳依頼受付部
2e 仕訳処理部
2f 取引認証部
2g 差損益算出部
2h ユーザデータベース
2i 取引データベース
2j 仕訳データベース
3 クライアント
4 ブロックチェーン
5 仮想通貨取引所
DESCRIPTION OF
Claims (14)
仮想通貨ベースの取引を行うユーザ毎に固有の仮想通貨アドレスを記憶するユーザデータベースと、
分散型ネットワークとして構築されたブロックチェーンにアクセスして、前記ユーザデータベースに記憶された仮想通貨アドレスに対応する取引の取引情報を取得するブロックチェーン情報取得部と、
前記ブロックチェーン情報取得部によって取得された取引情報を取引毎に記憶する取引データベースと、
仮想通貨の換算レートをネットワークを介して取得するレート情報取得部と、
特定のユーザから取引の仕訳依頼を受け付けた場合、当該特定のユーザのクライアントからネットワークを介して取得した仕訳依頼に係る取引の取引情報を前記取引データベースに記憶する仕訳依頼受付部と、
前記取引データベースから読み出された取引情報と、前記レート情報取得部によって取得された換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う仕訳処理部と
を有し、
前記仕訳処理部は、前記仕訳依頼に係る取引について、前記仕訳依頼受付部によって取得された前記取引情報と、前記ブロックチェーン情報取得部によって取得された前記取引情報とが整合した場合、前記仕訳処理を行うことを特徴とする自動仕訳サーバ。 In an automatic journal server that journals virtual currency-based transactions,
A user database that stores a unique virtual currency address for each user performing a virtual currency-based transaction;
A block chain information acquisition unit that accesses a block chain constructed as a decentralized network and acquires transaction information of a transaction corresponding to a virtual currency address stored in the user database;
A transaction database for storing the transaction information acquired by the block chain information acquisition unit for each transaction;
A rate information acquisition unit for acquiring a virtual currency conversion rate via a network;
When a transaction journal request is received from a specific user, a journal request reception unit that stores transaction information of the transaction related to the journal request acquired from the client of the specific user via the network in the transaction database;
Wherein the transaction information read from the transaction database, based on the exchange rate obtained by the rate information acquiring unit, possess a journal processing unit that performs a journal processing of the virtual currency transactions,
When the transaction information acquired by the journal request accepting unit and the transaction information acquired by the block chain information acquiring unit match for the transaction related to the journal request, the journal processing unit Rules server and performs.
前記ブロックチェーンにアクセスして、前記ユーザデータベースに記憶された仮想通貨アドレスに対応する取引の取引情報を取得して、前記取引データベースに記憶する第1のステップと、
仮想通貨の換算レートをネットワークを介して取得する第2のステップと、
特定のユーザから取引の仕訳依頼を受け付けた場合、当該特定のユーザのクライアントからネットワークを介して取得した仕訳依頼に係る取引の取引情報を前記取引データベースに記憶する第3のステップと、
前記取引データベースから読み出された取引情報と、前記換算レートとに基づいて、仮想通貨ベースの取引の仕訳処理を行う第4のステップとを有する処理をコンピュータに実行させ、
前記第4のステップは、前記仕訳依頼に係る取引について、前記第3のステップによって取得された前記取引情報と、前記第1のステップによって取得された前記取引情報とが整合した場合、前記仕訳処理を行うことを特徴とする自動仕訳プログラム。 In a computer having a user database that stores a unique virtual currency address for each user who performs a virtual currency-based transaction, and a transaction database that stores transaction information acquired from a block chain constructed as a distributed network for each transaction In an automatic journal program that runs and journals virtual currency-based transactions,
A first step of accessing the block chain, obtaining transaction information of a transaction corresponding to a virtual currency address stored in the user database, and storing the transaction information in the transaction database;
A second step of acquiring a virtual currency exchange rate via a network;
A third step of storing, in the transaction database, transaction information of a transaction related to a journal request acquired from a client of the specific user via a network when a transaction journal request is received from a specific user;
A transaction information read from the transaction database, on the basis of said exchange rate, to execute the process of chromatic and a fourth step of performing a journal processing of the virtual currency transactions in a computer,
In the fourth step, when the transaction related to the journal request matches the transaction information acquired in the third step and the transaction information acquired in the first step, the journal processing Rules program and performs.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017249800A JP6409115B1 (en) | 2017-12-26 | 2017-12-26 | Automatic journal server and automatic journal program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017249800A JP6409115B1 (en) | 2017-12-26 | 2017-12-26 | Automatic journal server and automatic journal program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP6409115B1 true JP6409115B1 (en) | 2018-10-17 |
| JP2019117445A JP2019117445A (en) | 2019-07-18 |
Family
ID=63855310
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017249800A Active JP6409115B1 (en) | 2017-12-26 | 2017-12-26 | Automatic journal server and automatic journal program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6409115B1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022514768A (en) * | 2018-12-20 | 2022-02-15 | ルッカ,インコーポレイテッド | Profit and Loss Calculation for Cryptocurrency Transactions |
| JP2022099455A (en) * | 2020-12-23 | 2022-07-05 | 株式会社ミロク情報サービス | Journal data creation system and journal data creation method |
| US12014360B2 (en) | 2018-12-20 | 2024-06-18 | Lukka, Inc. | Gain and loss computation for cryptocurrency transactions |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6770273B1 (en) * | 2020-01-24 | 2020-10-14 | 株式会社Genesis | Electronic currency tax filing support system |
| JP6915138B1 (en) * | 2020-08-28 | 2021-08-04 | 株式会社ジェーシービー | Information providing equipment, programs and information processing methods |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009301412A (en) * | 2008-06-16 | 2009-12-24 | Nec System Technologies Ltd | Debt management system, debt management method and program |
| JP2012230596A (en) * | 2011-04-27 | 2012-11-22 | Hitachi Systems Ltd | Credit settlement system and credit settlement method |
| JP6355168B2 (en) * | 2015-11-09 | 2018-07-11 | 日本電信電話株式会社 | Block chain generation device, block chain generation method, block chain verification device, block chain verification method and program |
| JP6799981B2 (en) * | 2016-09-23 | 2020-12-16 | フリー株式会社 | Accounting equipment, accounting methods and accounting programs |
| JP6165957B1 (en) * | 2016-12-16 | 2017-07-19 | ファーストアカウンティング株式会社 | Accounting processing apparatus, accounting processing system, accounting processing method, and accounting processing program |
-
2017
- 2017-12-26 JP JP2017249800A patent/JP6409115B1/en active Active
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022514768A (en) * | 2018-12-20 | 2022-02-15 | ルッカ,インコーポレイテッド | Profit and Loss Calculation for Cryptocurrency Transactions |
| JP7373142B2 (en) | 2018-12-20 | 2023-11-02 | ルッカ,インコーポレイテッド | Profit and loss calculation for cryptocurrency transactions |
| US12014360B2 (en) | 2018-12-20 | 2024-06-18 | Lukka, Inc. | Gain and loss computation for cryptocurrency transactions |
| JP2022099455A (en) * | 2020-12-23 | 2022-07-05 | 株式会社ミロク情報サービス | Journal data creation system and journal data creation method |
| JP7536633B2 (en) | 2020-12-23 | 2024-08-20 | 株式会社ミロク情報サービス | Journal entry data creation system and journal entry data creation method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2019117445A (en) | 2019-07-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6888850B2 (en) | Transaction management device, transaction management system, transaction management method in transaction management system, program | |
| US20210358038A1 (en) | Decentralized system for maintaining fractionalized interests in physical assets | |
| CN109074580B (en) | Method and system for secure transfer of entities over a blockchain | |
| JP6409115B1 (en) | Automatic journal server and automatic journal program | |
| US20220027902A1 (en) | Decentralized system for fractionalized tokens | |
| US20190108576A1 (en) | Blockchain systems and methods for procurement | |
| US20020087447A1 (en) | System and method for managing and executing event based investments | |
| JP2020535543A (en) | Methods, devices, and computer-readable media for compliant tokenization and asset value control | |
| US20200074460A1 (en) | System and method for a stable cryptocurrency | |
| KR20190107109A (en) | Computer-implemented system and method for generating and extracting user-related data stored on the blockchain | |
| US20030191695A1 (en) | Information processing apparatus, information processing method, and program | |
| KR102093291B1 (en) | Managerial system for culture contents based on the block chain | |
| US10140658B1 (en) | Commodity backed virtual currency method and system for network transactions | |
| KR20210110531A (en) | Method for transparent real estate transactions | |
| JP2002269349A (en) | Transaction execution system and its method, and recording medium for recording transaction execution program operated on computer | |
| JP2010055178A (en) | Factoring server device in early reduction system to credit card member store by purchase of credit card credit using factoring | |
| KR20230059109A (en) | method and system for providing digital safe based on cloud environment | |
| US20230208646A1 (en) | System and exchange for managing rights of publicity | |
| US20020138447A1 (en) | System and method for updating personal financial information | |
| US9805421B1 (en) | Integrated investment management system with network datafeed and incremental database refresh | |
| KR20200130558A (en) | Method for operating a crypto-currency exchange | |
| US7587350B1 (en) | Integrated investment management system with network datafeed | |
| JP7430696B2 (en) | Deposit/withdrawal control system, deposit/withdrawal control method, and program | |
| Gómez et al. | Blockverse: A cloud blockchain-based platform for tracking in affiliate systems | |
| JP2023181483A (en) | Financial product transaction management device, financial product transaction management method, program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180316 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20180316 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20180330 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180518 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180710 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180911 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180921 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6409115 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |