以下、本発明の一実施形態について、図面を参照しながら説明する。
図1は、本発明の一実施形態に係る口座管理システム1の全体構成の一例を示す図である。図1に示すように、本実施形態に係る口座管理システム1には、会計システム10、銀行システム12、複数の販売者端末14、及び、複数の入金端末16が含まれている。会計システム10、銀行システム12、販売者端末14、及び、入金端末16は、インターネット等のコンピュータネットワーク18に接続されている。そのため会計システム10、銀行システム12、販売者端末14、及び、入金端末16は、コンピュータネットワーク18を介して互いに通信可能となっている。
会計システム10は、例えば会計ソフトウェアがインストールされたサーバコンピュータ等のコンピュータシステムである。会計システム10には、例えば、プロセッサ10a、記憶部10b、通信部10c、出力部10d、及び、入力部10eが含まれる。
プロセッサ10aは、例えば会計システム10にインストールされているプログラムに従って動作するCPU等のプログラム制御デバイスである。記憶部10bは、例えばROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部10bには、プロセッサ10aによって実行されるプログラムが記憶される。通信部10cは、例えばコンピュータネットワーク18を介して銀行システム12や販売者端末14と通信するネットワークボードなどの通信インタフェースである。出力部10dは、例えばプロセッサ10aから入力される指示に従って情報を表示出力するディスプレイ等の表示部や音声出力するスピーカ等の音声出力部である。入力部10eは、例えばユーザが行った操作の内容をプロセッサ10aに出力するキーボード、マウス、マイク等である。
銀行システム12は、例えば銀行システム12の管理者である銀行の顧客の口座を管理するサーバコンピュータ等のコンピュータシステムである。銀行システム12には、例えば、プロセッサ12a、記憶部12b、通信部12c、出力部12d、及び、入力部12eが含まれる。
プロセッサ12aは、例えば銀行システム12にインストールされているプログラムに従って動作するCPU等のプログラム制御デバイスである。記憶部12bは、例えばROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部12bには、プロセッサ12aによって実行されるプログラムが記憶される。通信部12cは、例えばコンピュータネットワーク18を介して会計システム10や入金端末16と通信するネットワークボードなどの通信インタフェースである。出力部12dは、例えばプロセッサ12aから入力される指示に従って情報を表示出力するディスプレイ等の表示部や音声出力するスピーカ等の音声出力部である。入力部10eは、例えばユーザが行った操作の内容をプロセッサ12aに出力するキーボード、マウス、マイク等である。
本実施形態に係る銀行システム12では、例えば実口座と仮想口座という2種類の口座が管理されることとする。そして本実施形態では、仮想口座を指定して金銭の入金手続がされた場合、当該仮想口座に関連付けられている実口座への入金処理が実行される。
仮想口座と実口座との関連は、図2A及び図2Bに例示する口座関連管理データによって管理される。図2Aには、1個の口座関連管理データが示されており、図2Bには、3個の口座関連管理データが示されている。図2Aは、仮想口座番号が9000002、及び、9000003である仮想口座が未開設である(アクティベートされていない)状況における口座関連管理データの一例を示している。図2Bは、これらの仮想口座が開設された(アクティベートされた)後の状況における口座関連管理データの一例を示している。
図2A及び図2Bに示すように、本実施形態に係る口座関連管理データには、仮想口座番号と実口座番号とが含まれている。本実施形態では、仮想口座を指定して金銭の入金手続がされた場合、口座関連管理データにおいて当該仮想口座の仮想口座番号に関連付けられている実口座番号の実口座への入金処理が実行される。ここで例えば仮想口座に入金された金銭が、口座関連管理データにおいて当該仮想口座の仮想口座番号に関連付けられている実口座番号の実口座に振り替えられてもよい。なおこの場合、仮想口座から実口座への振替は所定のタイミングにまとめて行われてもよいし、仮想口座への入金がある度に行われてもよい。
販売者端末14は、会計システム10を利用するユーザが使用するパーソナルコンピュータ、スマートフォン、タブレット端末等のコンピュータである。
入金端末16は、銀行システム12が管理する口座への入金を行うための現金自動預け払い機(ATM)、パーソナルコンピュータ、スマートフォン、タブレット端末等のコンピュータである。
本実施形態では例えば、会計システム10のユーザと別のユーザとの間で金銭の請求の原因となる取引が発生することとする。具体的には例えば、会計システム10のユーザが販売者として販売する商品やサービスを当該ユーザの取引先であるユーザが購入したとする。
そしてこの場合に販売者が販売者端末14を介して当該取引に対応する図3に例示する売上データを会計システム10に登録して請求データの発行を要求したとする。すると会計システム10は、当該販売者を請求元とし、当該取引先を請求先とする、図4A及び図4Bに例示する請求データを発行する。
図3には、3個の売上データが示されている。図3に示すように、本実施形態に係る売上データには、例えば、伝票ID、販売者ID、取引先ID、金額データ、摘要データ、消込状況データ、などが含まれる。売上データに含まれる伝票IDは、例えば当該売上データの識別情報である。売上データに含まれる販売者IDは、例えば、当該売上データに対応付けられる取引における販売者、すなわち会計システム10のユーザの識別情報である。売上データに含まれる取引先IDは、例えば、当該売上データに対応付けられる取引における取引先の識別情報である。売上データに含まれる金額データは、例えば、当該売上データに対応付けられる売上の金額を示すデータである。売上データに含まれる摘要データは、例えば販売された商品やサービスの名称などといった、当該売上データに対応付けられる取引の内容を示すデータである。売上データに含まれる消込状況データは、例えば当該売上データに対応付けられる取引における請求に応じた金銭の入金が確認されたか否かを示すデータである。本実施形態では例えば、金銭の入金が確認された売上の売上データに含まれる消込状況データとして「済」が設定され、金銭の入金が未確認である売上の売上データに含まれる消込状況データとして「未」が設定される。
図4Aは、伝票IDが0002である売上データに対応付けられる請求データの一例を示しており、図4Bは、伝票IDが0003である売上データに対応付けられる請求データの一例を示している。
なお請求データのデータ形式は特に問わない。請求データは例えばテキスト形式であってもよいしPDF形式であってもよい。
また請求データの発行形式は特に問わない。例えば請求データの内容が記録された紙等の記録媒体が、販売者端末14が備えるプリンタから印刷出力されてもよい。この場合に請求元である販売者は請求先である取引先に印刷された請求データを郵送するようにしてもよい。また例えば、取引先の電子メールアドレス宛に請求データを含む電子メールが送信されても構わない。
図4A及び図4Bに示すように、本実施形態に係る請求データには、例えば、請求書番号I1、請求元情報I2、請求先情報I3、請求金額情報I4、品目情報I5、及び、振込先口座番号I6が含まれている。
ここで請求データに含まれる請求書番号I1としては、例えば、当該請求データに対応付けられる売上データに含まれる伝票IDが設定される。また請求データに含まれる請求元情報I2としては、例えば、当該請求データに対応付けられる売上データに含まれる販売者IDに対応付けられる販売者の名称が設定される。また請求データに含まれる請求先情報I3としては、例えば、当該請求データに対応付けられる売上データに含まれる取引先IDに対応付けられる取引先の名称が設定される。また請求データに含まれる請求金額情報I4としては、例えば、当該請求データに対応付けられる売上データに含まれる金額データの値が設定される。また請求データに含まれる品目情報I5としては、例えば、当該請求データに対応付けられる売上データに含まれる摘要データの値が設定される。
なお請求元情報I2として設定される販売者の名称は、例えば図5に例示する販売者マスタデータに基づいて特定される。図5には、2個の販売者マスタデータが示されている。図5に示すように販売者マスタデータには、例えば、販売者の販売者ID、当該販売者の名称を示す名称データ、及び、当該販売者の実口座の口座番号、などが含まれている。ここで本実施形態では、銀行システム12を管理する銀行において当該口座番号の実口座が既に開設されていることとする。
また請求先情報I5として設定される取引先の名称は、例えば図6に例示する取引先マスタデータに基づいて特定可能となっている。図6には、3個の取引先マスタデータが示されている。図6に示すように取引先マスタデータには、例えば、会計システム10に登録されている1又は複数の販売者の取引先の識別情報である取引先ID、及び、当該取引先の名称を示す名称データ、などが含まれている。
そして本実施形態では例えば、請求データに含まれる振込先口座番号I6として、販売者の実口座の口座番号は設定されない。その代わりに本実施形態では例えば、請求データに含まれる振込先口座番号I6として、当該請求データに対応付けられる販売者IDと取引先IDとの組合せに基づいて特定される仮想口座の口座番号が設定される。
ここで振込先口座番号I6として設定される仮想口座の口座番号は、例えば図7に例示する仮想口座管理データに基づいて特定される。図7には、50個の仮想口座管理データが示されている。図7に示すように、本実施形態に係る仮想口座管理データには、例えば、仮想口座番号、販売者ID、取引先ID、及び、開設状況データ、が含まれている。
本実施形態では例えば、会計システム10において利用可能な仮想口座番号の範囲が銀行システム12から会計システム10に通知される。そして会計システム10は、銀行システム12からの仮想口座番号の範囲の通知を受け付けると、例えば当該範囲に属する仮想口座番号のそれぞれに対応付けられる仮想口座管理データを生成する。この段階では、当該範囲に属する仮想口座番号に対応付けられる仮想口座は銀行システム12において開設されていない。
ここで例えば、会計システム10において利用可能な1又は複数の仮想口座番号自体を含む仮想口座番号のリストが銀行システム12から会計システム10に通知されてもよい。この場合は、会計システム10は、銀行システム12から通知された仮想口座番号に対応付けられる仮想口座管理データを生成することとなる。またこの場合に通知される仮想口座番号は連番である必要はない。
仮想口座管理データに含まれる開設状況データは、当該仮想口座管理データに対応付けられる仮想口座が銀行システム12において開設されているか否かを示すデータである。本実施形態では例えば、開設されていない仮想口座に対応付けられる仮想口座管理データに含まれる開設状況データの値として「未開設」が設定される。本実施形態では仮想口座管理データが生成されるタイミングでは当該仮想口座管理データに対応付けられる仮想口座は開設されていないので、初期状態では仮想口座管理データに含まれる開設状況データの値として「未開設」が設定されることとなる。また初期状態では仮想口座管理データに含まれる販売者ID及び取引先IDの値は空である。
そして本実施形態では販売者と取引先との新たな組合せにおける取引の発生に応じて、販売者ID及び取引先IDの値が空であり、開設状況データの値が「未開設」である仮想口座管理データのうちの1又は複数が選出される。そして選出される仮想口座管理データに含まれる販売者IDとして当該取引における販売者の販売者IDが設定され、選出される仮想口座管理データに含まれる取引先IDとして当該取引における取引先の取引先IDが設定される。また選出される仮想口座管理データに含まれる開設状況データの値が「開設中」に変更される。そして会計システム10は、当該仮想口座管理データに対応付けられる仮想口座の開設指示を銀行システム12に送信する。なお仮想口座の開設指示が送信されるタイミングは特に問わず、例えば売上データが登録されたタイミングであっても、請求データが発行されたタイミングであっても構わない。
本実施形態では、銀行システム12は、例えば会計システム10が送信する開設指示の受信に応じて、仮想口座を開設する。本実施形態では当該開設指示には、例えば、開設対象となる仮想口座番号、及び、実口座番号が関連付けられている。そして本実施形態では、仮想口座の開設の際に図2A及び図2Bに例示する口座関連管理データが生成される。
例えば口座関連管理データが図2Aに示す状態であるとする。ここで銀行システム12が、仮想口座番号9000002及び実口座番号1000001と関連付けられている開設指示を受け付けたとする。また銀行システム12が、仮想口座番号9000003及び実口座番号1000002と関連付けられている開設指示を受け付けたとする。この場合、図2Bに示すように、仮想口座番号9000002と実口座番号1000001の組合せを含む口座関連管理データ、及び、仮想口座番号9000003と実口座番号1000002の組合せを含む口座関連管理データが生成されることとなる。
なお本実施形態に係る口座関連管理データには、請求データにおける請求先に関する情報は含まれていない。そのため会計システム10から受信する開設指示には、取引先IDなどといった、請求データにおける請求先に関する情報が関連付けられている必要はない。
仮想口座の開設及び口座関連管理データの生成が終了すると、銀行システム12は当該仮想口座の開設処理が終了したことを示す開設処理終了通知を会計システム10に送信する。会計システム10は、当該開設処理終了通知を受信すると、例えば、当該仮想口座に対応付けられる仮想口座管理データに含まれる開設状況データの値を「開設済」に変更する。
ここで例えば、発行された請求データを受領した取引先が、当該請求データに示されている金額の金銭を、当該請求データに示されている口座に対する入金手続を入金端末16から行ったとする。この場合、銀行システム12は、入金手続がされた仮想口座に関連付けられている実口座に当該金額の金銭の入金処理を実行する。ここで銀行システム12が、当該仮想口座に入金された金銭を請求元の実口座に振り替える振替処理を実行してもよい。
そして銀行システム12は、本実施形態では例えば、実口座への金銭の入金処理に応じて、当該実口座への入金処理に対応付けられる、図8に例示する入金明細データが銀行システム12から会計システム10に送信される。
図8には、2個の入金明細データが示されている。図8に示すように入金明細データには例えば、実口座番号、入金仮想口座番号、支払人名称データ、及び、入金金額データが含まれている。入金明細データに含まれる実口座番号は、例えば入金処理が実行された実口座の口座番号である。入金仮想口座番号は、例えば入金手続がされた仮想口座の口座番号である。支払人名称データは、仮想口座への入金の際に入金端末16において指定された支払人の名称を示すデータである。入金金額データは仮想口座への入金手続の際に指定された金額を示すデータである。
例えば毎日所定時刻などといった所定のタイミングに仮想口座から実口座への金銭の振替処理がまとめて行われる場合は、まとめて行われる複数の振替のそれぞれに対応付けられる入金明細データが銀行システム12から会計システム10に送信されることとなる。
会計システム10は、入金明細データを受信すると、例えば売上データの消込処理を実行する。ここで例えば、入金明細データに含まれる入金仮想口座番号の値を仮想口座番号の値として含む仮想口座管理データが特定されてもよい。そして例えば、特定される仮想口座管理データに含まれる販売者ID及び取引先IDを含み、消込状況データの値が「未」である売上データが1つ存在する場合には、当該売上データに含まれる消込状況データの値が「済」に変更されてもよい。なおここで例えば、特定される仮想口座管理データに含まれる販売者ID及び取引先IDを含み、消込状況データの値が「未」である売上データが複数存在する場合には、当該販売者IDに対応する販売者の販売者端末14にその旨が通知されるようにしてもよい。なお売上データの消込処理は上述のものには限定されず、その他の公知の方法により消込処理が実行されても構わない。
以上説明したように、本実施形態では、金銭の請求元の実口座に関連付けられた仮想口座を金銭の請求先毎に設けており、入金明細データに入金仮想口座番号が含まれている。そのため、本実施形態では、金銭の入金があった仮想口座の口座番号に基づいて、当該金銭を入金した請求先を的確に把握できるようになっている。
また本実施形態では、今まで取引がなかった販売者と取引先との組合せにおける取引が発生した際に、当該取引の発生に応じて当該販売者と当該取引先との組合せに対応付けられる仮想口座の口座番号が割り当てられる。そして、当該仮想口座が開設されるよう、当該仮想口座と販売者の実口座とが関連付けられる。このようにして本実施形態によれば、仮想口座と販売者の実口座とを取引の発生後に関連付けることができる。
また本実施形態では仮想口座が販売者の実口座に関連付けられていない状況でも請求データの発行が可能である。そのため本実施形態では、販売者の実口座に関連付けられた利用可能な仮想口座が不足することによって請求データの発行までに時間がかかってしまうという事態の発生を防ぐことができる。また本実施形態では、販売者の実口座に関連付けられた利用可能な仮想口座が不足することを防ぐために、利用可能な仮想口座の残数を販売者が管理する必要がない。そのため本実施形態では、販売者による仮想口座の管理の手間が低減される。
また本実施形態では、銀行システム12において請求先が未定である仮想口座を実口座に関連付けて管理する必要がなく、取引が発生して入金される見込みがある仮想口座だけを実口座に関連付けて管理すれば充分である。そのため本実施形態では実口座に関連付けられている開設済の仮想口座の数を最小限に抑えることができる。
また本実施形態では、販売者が多くの仮想口座を予め利用可能にしておく必要がない。そのため本実施形態では販売者には当面利用される見込みがない仮想口座を維持するための余分なコストが発生しない。また本実施形態では、銀行システム12において、当面利用される見込みがない仮想口座を維持するためのリソースが必要とならない。また実口座に関連付けられている開設済の仮想口座の数が最小限に抑えられるため、例えば銀行システム12がすべての仮想口座に対して入金の有無の確認処理を実行する場合においても、確認処理の処理負荷が抑えられる。
以下、本実施形態に係る会計システム10及び銀行システム12の機能並びに本実施形態に係る会計システム10及び銀行システム12で実行される処理についてさらに説明する。
図9Aは、本実施形態に係る会計システム10で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係る会計システム10で、図9Aに示す機能のすべてが実装される必要はなく、また、図9Aに示す機能以外の機能が実装されていても構わない。
図9Aに示すように、本実施形態に係る会計システム10は、機能的には例えば、マスタデータ記憶部20、仮想口座管理データ記憶部22、売上データ記憶部24、仮想口座指定受付部26、仮想口座管理データ生成部28、要求受付部30、売上データ登録部32、取引発生確認部34、仮想口座決定部36、口座関連付け部38、請求データ発行部40、入金明細データ受信部42、消込処理実行部44、を含んでいる。
マスタデータ記憶部20、仮想口座管理データ記憶部22、売上データ記憶部24は、記憶部10bを主として実装される。仮想口座指定受付部26、要求受付部30、入金明細データ受信部42、通信部10cを主として実装される。仮想口座管理データ生成部28、売上データ登録部32、取引発生確認部34、仮想口座決定部36、消込処理実行部44は、プロセッサ10aを主として実装される。口座関連付け部38、請求データ発行部40は、プロセッサ10a及び通信部10cを主として実装される。
以上の機能は、コンピュータである会計システム10にインストールされた、以上の機能に対応する指令を含むプログラムをプロセッサ10aで実行することにより実装されてもよい。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介して会計システム10に供給される。
図9Bは、本実施形態に係る銀行システム12で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係る銀行システム12で、図9Bに示す機能のすべてが実装される必要はなく、また、図9Bに示す機能以外の機能が実装されていても構わない。
図9Bに示すように、本実施形態に係る銀行システム12は、機能的には例えば、口座関連管理データ記憶部50、仮想口座指定出力部52、開設指示受付部54、仮想口座開設部56、入金手続受付部58、入金処理実行部60、入金明細データ生成部62、入金明細データ送信部64、を含んでいる。
口座関連管理データ記憶部50は、記憶部12bを主として実装される。仮想口座指定出力部52、開設指示受付部54、入金手続受付部58、入金明細データ送信部64は、通信部12cを主として実装される。入金処理実行部60、入金明細データ生成部62は、プロセッサ12aを主として実装される。仮想口座開設部56は、プロセッサ12a及び通信部12cを主として実装される。
以上の機能は、コンピュータである銀行システム12にインストールされた、以上の機能に対応する指令を含むプログラムをプロセッサ12aで実行することにより実装されてもよい。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介して銀行システム12に供給される。
マスタデータ記憶部20は、本実施形態では例えば、図5に例示する販売者マスタデータ、及び、図6に例示する取引先マスタデータを記憶する。
仮想口座管理データ記憶部22は、本実施形態では例えば、図7に例示する仮想口座管理データを記憶する。本実施形態に係る仮想口座管理データには、例えば、予め金融機関の実口座との関連付けがされていない複数の仮想口座を特定する仮想口座特定データ(図7の例では仮想口座番号)が含まれている。
売上データ記憶部24は、本実施形態では例えば、図3に例示する売上データを記憶する。
仮想口座指定受付部26は、本実施形態では例えば、予め金融機関の実口座との関連付けがされていない、会計システム10において利用可能な複数の仮想口座の指定を銀行システム12から受け付ける。ここで仮想口座指定受付部26は、会計システム10において利用可能な仮想口座の口座番号の範囲を銀行システム12から受け付けてもよい。また仮想口座指定受付部26は、会計システム10において利用可能な1又は複数の仮想口座番号自体を含む仮想口座番号のリストを銀行システム12から受け付けてもよい。
仮想口座管理データ生成部28は、本実施形態では例えば、図7に例示する仮想口座管理データを生成して、仮想口座管理データ記憶部22に記憶させる。ここで仮想口座管理データ生成部28は、仮想口座指定受付部26が指定を受け付けた仮想口座に対応する仮想口座管理データを生成してもよい。例えば仮想口座指定受付部26が、9000001から9000050までの口座番号の範囲を受け付けたとする。この場合に仮想口座管理データ生成部28が、それぞれが9000001から9000050までのいずれかの番号を仮想口座番号として含む50個の仮想口座管理データを生成してもよい。また例えば仮想口座指定受付部26が、仮想口座番号のリストを受け付けたとする。この場合に、仮想口座管理データ生成部28が、このリストに含まれる仮想口座番号のそれぞれに対応付けられる仮想口座管理データを生成してもよい。また仮想口座管理データ生成部28は、販売者ID及び取引先IDの値が空であり、開設状況データの値が「未開設」である仮想口座管理データを生成してもよい。
要求受付部30は、本実施形態では例えば、販売者端末14から会計システム10が実行すべき処理の要求を受け付ける。ここで例えば要求受付部30が、売上登録要求や購入データの発行要求を受け付けてもよい。
売上データ登録部32は、本実施形態では例えば、図3に例示する売上データを生成して、売上データ記憶部24に記憶させる。ここで売上データ登録部32は、売上登録要求の受付に応じて、売上データを生成してもよい。
取引発生確認部34は、本実施形態では例えば、金銭の請求の原因となる取引の発生を確認する。取引発生確認部34は、例えば、所定の時間間隔で新たに登録された売上データを確認してもよい。また取引発生確認部34は、例えば、新たな売上データの登録を監視してもよい。この場合は例えば、売上データが登録されたタイミングに、金銭の請求の原因となる取引の発生が確認されることとなる。また取引発生確認部34は、新たに登録された売上データのそれぞれの販売者ID及び取引先IDを特定してもよい。また取引発生確認部34は、新たに登録された売上データの数を発生した取引の数として特定してもよい。
仮想口座決定部36は、取引発生確認部34により取引の発生が確認された際に、当該取引における入金先となる仮想口座を決定する。ここで仮想口座決定部36は、取引発生確認部34により金銭の請求の原因となる取引の発生が確認された際に、複数の仮想口座のうちのいずれか1又は複数の仮想口座を決定してもよい。また仮想口座決定部36は、例えば、販売者ID及び取引先IDの値が空である仮想口座管理データのうちのいずれか1又は複数を選出してもよい。また仮想口座決定部36は、金銭の請求の原因となる取引の発生が確認された際に、当該取引に対応する仮想口座、すなわち当該取引で用いられる仮想口座を選出してもよい。
口座関連付け部38は、本実施形態では例えば、選出される仮想口座を指定して金銭の入金手続がされた場合に入金処理がされるべき実口座を、当該仮想口座に関連付ける。
ここで口座関連付け部38は、例えば、取引発生確認部34が特定する販売者ID及び取引先IDのそれぞれを販売者ID及び取引先IDとして含む仮想口座管理データが存在するか否かを確認してもよい。そしてこのような仮想口座管理データが存在しない場合に、口座関連付け部38は、選出される仮想口座のうちのいずれかの販売先ID及び取引先IDとして、取引発生確認部34が特定する販売者ID及び取引先IDを設定してもよい。
また、口座関連付け部38は、仮想口座の開設指示を銀行システム12に送信してもよい。なお当該開設指示には、選出される仮想口座を指定して金銭の入金手続がされた場合に入金処理がされるべき実口座を、当該仮想口座に関連付けることの指示が含まれていてもよい。口座関連付け部38は、例えば、販売者ID及び取引先IDが設定された仮想口座管理データに含まれる仮想口座番号に対応する仮想口座の開設指示を銀行システム12に送信してもよい。
ここで口座関連付け部38は、例えば、販売者ID及び取引先IDが設定された仮想口座管理データに含まれる仮想口座番号、及び、販売者マスタデータにおいて当該販売者IDに関連付けられている実口座の口座番号を含む開設指示を送信してもよい。
なお金銭の請求の原因となる取引の発生が確認された際に選出される仮想口座がどの販売者及び取引者に割り当てられるかは、予め決定されている必要はない。例えば仮想口座決定部36は、取引発生確認部34が発生した取引の数として特定した数の仮想口座を確保してもよい。そしてその後、口座関連付け部38が、確保された仮想口座を用いる販売者及び取引先を決定して、当該販売者の販売者ID及び当該取引先の取引先IDを、確保された仮想口座に対応する仮想口座管理データに設定してもよい。
請求データ発行部40は、図4A及び図4Bに例示する請求データを発行する。ここで請求データ発行部40は、例えば、購入データの発行要求の受付に応じて請求データを発行してもよい。
例えば、請求データ発行部40が、例えば売上データに対応付けられる請求データの発行要求を受け付けたとする。この場合、請求データ発行部40は、当該売上データに含まれる伝票IDを特定する。また請求データ発行部40は、販売者マスタデータにおいて当該売上データに含まれる販売者IDに対応付けられる名称データの値を特定する。また請求データ発行部40は、取引先マスタデータにおいて当該売上データに含まれる取引先IDに対応付けられる名称データの値を特定する。また請求データ発行部40は、当該売上データに含まれる金額データ及び摘要データの値を特定する。また請求データ発行部40は、仮想口座管理データにおいて、当該売上データに含まれる販売者ID及び取引先IDの組合せに関連付けられている仮想口座番号を特定する。
そして請求データ発行部40は、特定されたこれらの値に基づいて、請求データを生成する。ここで生成される請求データには、特定された伝票IDが請求書番号I1として設定される。また、特定された販売者IDに対応付けられる名称データの値が請求元情報I2として設定される。また、特定された取引者IDに対応付けられる名称データの値が請求先情報I3として設定される。また、特定された金額データの値が請求金額情報I4として設定される。また、特定された摘要データの値が品目情報I5として設定される。また、特定された仮想口座番号が振込先口座番号I6として設定される。
入金明細データ受信部42は、本実施形態では例えば、図8に例示する入金明細データを銀行システム12から受信する。
消込処理実行部44は、本実施形態では例えば、受信した入金明細データに基づいて、上述した、売上データの消込処理を実行する。
口座関連管理データ記憶部50は、本実施形態では例えば、図2A及び図2Bに例示する口座関連管理データを記憶する。
仮想口座指定出力部52は、本実施形態では例えば、予め金融機関の実口座との関連付けがされていない複数の仮想口座の指定を出力する。ここで仮想口座指定出力部52は、会計システム10において利用可能な仮想口座の口座番号の範囲を会計システム10に送信してもよい。
開設指示受付部54は、本実施形態では例えば、仮想口座の開設指示を会計システム10から受け付ける。なお上述のように当該開設指示には、選出される仮想口座を指定して金銭の入金手続がされた場合に入金処理がされるべき実口座を、当該仮想口座に関連付けることの指示が含まれていてもよい。
仮想口座開設部56は、本実施形態では例えば、開設指示を受け付けた仮想口座の開設処理(アクティベート処理)を実行する。ここでこの開設処理には、例えば、新たな口座関連管理データを生成して、口座関連管理データ記憶部50に記憶させる処理が含まれていてもよい。ここで例えば受け付けた開設指示に関連付けられている仮想口座番号及び実口座の口座番号のそれぞれを仮想口座番号及び実口座番号として含む口座関連管理データを生成してもよい。
また仮想口座開設部56は、仮想口座の開設処理の実行が終了した際に、開設処理終了通知を会計システム10に送信してもよい。そして口座関連付け部38が、開設処理終了通知の受信に応じて、開設処理が実行された仮想口座に対応する仮想口座管理データの開設状況データの値を「開設済」に変更してもよい。
入金手続受付部58は、本実施形態では例えば、仮想口座、支払人の名称、及び、入金金額が指定された金銭の入金手続を入金端末16から受け付ける。
入金処理実行部60は、本実施形態では例えば、受け付けた入金手続に応じた入金処理を実行する。ここで入金処理実行部60は例えば、仮想口座への入金処理を一旦実行した上で、口座関連管理データにおいて当該仮想口座に関連付けられている実口座に振り替えてもよい。また入金処理実行部60は例えば、口座関連管理データにおいて入金手続において指定された仮想口座に関連付けられている実口座への入金処理を実行してもよい。なお本実施形態における、支払人による仮想口座を指定した振込による入金処理の内容は特定の処理に限定されるものではなく、仮想口座の実施形態に応じた入金処理であれば特にその処理の内容は問わない。
入金明細データ生成部62は、本実施形態では例えば、実行された入金処理に応じた入金明細データを生成する。入金明細データ生成部62は、例えば、入金処理が実行された実口座の実口座番号、入金手続において指定された仮想口座の仮想口座番号、入金手続において指定された支払人の名称、及び、入金金額のそれぞれを特定してもよい。そして入金明細データ生成部62は、例えば、特定された実口座番号、仮想口座番号、支払人の名称、入金金額のそれぞれを、実口座番号、仮想口座番号、支払人名称データの値、及び、入金金額データの値として含む入金明細データを生成してもよい。
入金明細データ送信部64は、本実施形態では例えば、入金明細データ生成部62が生成する入金明細データを会計システム10に送信する。
以下、会計システム10において実行される、売上データの登録及び請求データの発行に関する処理の流れの一例を、図10に示すフロー図を参照しながら説明する。なお以下の処理例の開始時には、仮想口座番号が9000003である仮想口座管理データに含まれる販売者ID及び取引先IDの値は空であり、開設状況データの値は「未開設」であることとする。また以下の処理例の開始時には、図3に例示する、伝票IDが0003である売上データは売上データ記憶部24に記憶されていないこととする。
まず、要求受付部30が、売上登録要求を受け付けたとする(S101)。
すると、売上データ登録部32が、S101に示す処理で受け付けた売上登録要求に対応付けられる売上データを登録する(S102)。ここでは例えば、図3に例示する、伝票IDが0003である売上データが生成されて、売上データ記憶部24に記憶される。そして取引発生確認部34は、当該売上データに対応する取引の発生を確認する(S103)。
すると、仮想口座決定部36は、当該売上データに示されている販売者と取引先との組合せに対応する仮想口座が存在するか否かを判定する(S104)。ここでは例えば、販売者IDとして002を含み、取引先IDとして103を含む仮想口座管理データが仮想口座管理データ記憶部22に記憶されているか否かが判定される。
ここで存在しないと判定された場合は(S104:N)、仮想口座決定部36は、販売者ID及び取引先IDの値が空である仮想口座管理データのうちのいずれかを選出する(S105)。ここでは例えば仮想口座番号が9000003である仮想口座管理データが選出されることとする。
そして口座関連付け部38は、S105に示す処理で選出された仮想口座に対応する仮想口座管理データの販売者ID及び取引先IDを設定する(S106)。ここでは例えば、S102に示す処理で登録された売上データに含まれる販売者ID及び取引先IDが、仮想口座番号が9000003である仮想口座管理データの販売者ID及び取引先IDとして設定される。
そして、口座関連付け部38は、S106に示す処理で販売者ID及び取引先IDが設定された仮想口座管理データに対応する仮想口座の開設指示を銀行システム12に送信する(S107)。当該開設指示には、例えば、仮想口座番号9000003及び実口座の口座番号1000002が関連付けられている。そして口座関連付け部38は、S105に示す処理で選出された仮想口座に対応する仮想口座管理データの開設状況データの値を「開設中」に変更する(S108)。
ここでS104に示す処理で存在すると判定された場合(S104:Y)、又は、S108に示す処理が終了した場合に、要求受付部30が、S102に示す処理で登録された売上データに対応する請求データの発行要求を受け付けたとする(S109)。すると請求データ発行部40は、伝票IDが0003である売上データに対応する、図4Bに例示する請求データを生成する(S110)。そして請求データ発行部40が、S109に示す処理で生成された請求データを発行して(S111)、本処理例に示す処理は終了される。
このように本処理例では、仮想口座が開設されていなくても、すなわち、仮想口座を指定して金銭の入金手続がされた場合に入金処理がされるべき実口座と当該仮想口座との関連付けがされていなくても、当該仮想口座を振込先とする請求データの発行が可能である。
次に、銀行システム12及び会計システム10において実行される、仮想口座の開設に関する処理の流れの一例を、図11に示すフロー図を参照しながら説明する。なお以下の処理例の開始時には、仮想口座番号が9000003である口座関連管理データは口座関連管理データ記憶部50に記憶されていないこととする。
まず、開設指示受付部54が、上述のS107に示す処理で送信された仮想口座の開設指示を会計システム10から受け付けたとする(S201)。すると、仮想口座開設部56が、開設指示を受け付けた仮想口座の開設処理を実行する(S202)。ここでは例えば、仮想口座番号として9000003を含み実口座番号として1000002を含む口座関連管理データの生成、及び、当該口座関連管理データの口座関連管理データ記憶部50への記憶も、開設処理の一部として実行される。
そして開設処理の実行が終了すると、仮想口座開設部56は、開設した仮想口座の仮想口座番号が関連付けられた開設処理終了通知を会計システム10に送信する(S203)。
そして口座関連付け部38は、開設処理終了通知の受信に応じて、当該開設処理終了通知に関連付けられている仮想口座番号を含む仮想口座管理データの開設状況データの値を「開設済」に変更して(S204)、本処理例に示す処理は終了される。
次に、銀行システム12及び会計システム10において実行される、入金に関する処理の流れの一例を、図12に示すフロー図を参照しながら説明する。
まず、入金手続受付部58が、金銭の入金手続を受け付けたとする(S301)。ここで当該入金手続では、仮想口座番号として9000003が、支払人の名称として「B3株式会社」が、入金金額として20,000円が指定されていることとする。
すると、入金処理実行部60が、S301に示す処理で受け付けた入金手続において指定された仮想口座に関連付けられている実口座を特定する(S302)。ここでは例えば、仮想口座番号が9000003である仮想口座に関連付けられている実口座の実口座番号である1000002が特定される。
そして入金処理実行部60が、S302に示す処理で特定された実口座への入金処理を実行する(S303)。
そして入金明細データ生成部62が、S303に示す処理で実行された入金処理に対応する入金明細データを生成する(S304)。ここでは例えば、図8に示す、実口座番号として1000002を含み入金仮想口座番号として9000003を含む入金明細データが生成される。
そして入金明細データ送信部64が、S304に示す処理で生成された入金明細データを会計システム10に送信する(S305)。
そして会計システム10の口座関連付け部38が、受信した入金明細データに基づいて、消込処理を実行して(S306)、本処理例に示す処理が終了される。ここで例えば、伝票IDが0003である売上データの消込状況データの値が「済」に変更されてもよい。
なお、本発明は上述の実施形態に限定されるものではない。
例えば上述の実施形態では販売者と取引先との組合せ毎に仮想口座が割り当てられるが、取引毎に仮想口座が割り当てられるようにしてもよい。この場合、仮想口座管理データが、伝票IDをさらに含むようにしてもよい。そしてこの場合は例えば、図10に例示するS104に示す処理が実行される必要はなく、売上データが登録される度に、販売者ID及び取引先IDが割り当てられていない仮想口座管理データのうちのいずれかが選出されてもよい。そして登録された売上データに含まれる伝票ID、販売者ID及び取引先IDのそれぞれが、選出された仮想口座管理データの伝票ID、販売者ID及び取引先IDとして設定されてもよい。またこの場合、売上データに対応する請求データの発行要求の受付に応じて、仮想口座管理データにおいて当該売上データの伝票IDに関連付けられている仮想口座番号が振込先口座番号I6として設定された請求データが発行されてもよい。
また例えば、金銭の請求の原因となる取引における入金先となる仮想口座を決定する仮想口座決定プログラムが会計システム10にインストールされていてもよい。当該仮想口座決定プログラムは、会計システム10の記憶部10bに記憶されていてもよい。そして当該仮想口座決定プログラムには、予め金融機関の実口座との関連付けがされていない複数の仮想口座を特定する仮想口座特定データが含まれていてもよい。ここで仮想口座特定データの例としては、予め金融機関の実口座との関連付けがされていない複数の仮想口座の仮想口座番号のリストや、当該複数の仮想口座の仮想口座番号の範囲を示すデータなどが挙げられる。また仮想口座特定データは、例えば、当該仮想口座特定データに基づき特定される複数の仮想口座が満たすべき条件(例えば、9で始まる7桁の数字など)を示すデータであってもよい。また仮想口座決定プログラムには、取引における入金先として決定可能な仮想口座の上限数を示す上限数データが含まれていてもよい。
また仮想口座決定プログラムは、銀行システム12の管理者である銀行から提供されてもよい。ここで銀行システム12が複数の会計システム10によって利用されることが想定される。この場合、これら複数の会計システム10のそれぞれにインストールされる仮想口座決定プログラムは、仮想口座特定データに基づき特定される仮想口座が互いに重複しないよう設定されていてもよい。
そして会計システム10が、金銭の請求の原因となる取引の発生が確認された際に、仮想口座決定プログラムを実行してもよい。そして当該仮想口座決定プログラムに含まれる仮想口座特定データに基づき特定される複数の仮想口座のうちのいずれか1又は複数の仮想口座が当該取引における入金先として決定されてもよい。また会計システム10は、上述の上限数データが示す上限数を上限として仮想口座を決定してもよい。
そして会計システム10が、決定された仮想口座の仮想口座番号、当該取引における販売者の販売者ID、当該取引における取引先の取引先ID、及び、値が「未開設」である開設状況データを含む仮想口座管理データを生成してもよい。そして会計システム10が、取引における入金先として決定された仮想口座の開設指示を銀行システム12に送信してもよい。
なお会計システム10は、取引の発生が確認されたタイミングに仮想口座決定プログラムを実行する必要はない。例えば会計システム10は予め仮想口座決定プログラムを実行して入金先の候補の仮想口座を決定してもよい。そして会計システム10は、金銭の請求の原因となる取引の発生が確認された際に、当該候補の仮想口座を当該取引における入金先として決定してもよい。
以上のようにして、会計システム10において取引における販売者の実口座と仮想口座決定プログラムにより決定される仮想口座との関連付けがされた後に、銀行システム12において当該仮想口座の口座番号が認識されるようにしてもよい。
また例えば口座関連付け部38が、所定の条件を満足する仮想口座に関連付けられている実口座を変更してもよい。
例えば、消込状況データの値が「済」に変更された売上データに含まれる販売者ID及び取引先IDを含む仮想口座管理データの販売者ID及び取引先IDの値が空に変更されてもよい。あるいは例えば、販売者ID及び取引先IDの値が設定されてから所定の時間が経過した仮想口座管理データの販売者ID及び取引先IDの値が空に変更されてもよい。
そして新たな取引の発生が確認された際に、当該取引における販売者ID及び取引先IDを当該仮想口座管理データに設定してもよい。この場合、口座関連付け部38は、仮想口座と実口座との関連付けの変更指示を銀行システム12に送信してもよい。そして銀行システム12の仮想口座開設部56が、仮想口座と実口座との関連付けを変更してもよい。
また口座管理システム1における会計システム10、銀行システム12、販売者端末14、及び、入金端末16の役割分担は上述のものに限定されない。例えば、1のコンピュータシステムに、図9Aに示す機能及び図9Bに示す機能の両方が実装されていてもよい。
また、上記の具体的な文字列や数値及び図面中の具体的な文字列や数値は例示であり、これらの文字列や数値には限定されない。