以下、本発明の一実施形態に係る振込システムSについて、図1、2を用いて説明する。図1は、本発明の一実施形態に係る管理サーバ1が適用される振込システムSのうちユーザと仲介事業者側のシステムを示す模式図である。図2は、本発明の一実施形態に係る管理サーバ1が適用される振込システムSのうち銀行側のシステムを示す模式図である。なお、本明細書の振込システムSによる振込処理における振込対象は、法定通貨だけではなく、電子マネー、暗号通貨等の貨幣又はポイント等の貨幣と同様の機能を有するもののことを指すものであり、その態様が特に限定されるわけではない。
本実施形態に係る振込システムSは、管理サーバ1とユーザ端末2と全国銀行データ通信システム(以下、全銀システムと称する)Gを含む。管理サーバ1は、インターネット等のネットワークNを介してユーザ端末2と全銀システムGと接続される。
管理サーバ1は、振込処理を実行するための管理用ウェブサイトを振込システムSに実現するコンピュータである。管理サーバ1は、管理用ウェブサイトを介してユーザからの指令を受けることで振込システムSが実行可能な各種の処理を実行する。管理用ウェブサイトの詳細は、後述する。
また、本実施形態に係る管理サーバ1は、例えば、ユーザと金融機関との間で行われる振込の仲介サービス等を提供する仲介事業者により設けられる。本実施形態においてユーザとは、仲介サービスを受ける対象者を示す。対象者は、例えば、法人会員や個人等である。また、以下において、本実施形態に係る金融機関は、銀行として説明するが、これに限られない。例えば、金融機関は、郵便局や信用金庫や農協等でも良く、電子マネーや、暗号通貨等を取り扱う取引所等でも良い。
ユーザ端末2は、振込システムSを利用するユーザが所有する第2の情報処理装置である。ユーザ端末2は、例えば、デスクトップパソコン等の据え置き型のコンピュータや、マートフォンやタブレット等の携帯可能なコンピュータである。ユーザ端末2は、ユーザの操作により管理サーバ1への各種の処理の指令を出力する。
全銀システムGは、通信技術を用いて異なる金融機関間での送金を行うシステムである。全銀システムGは、全国銀行資金決済ネットワーク(以下、全銀ネットワーク)により運営されている。全銀システムGは、送金を行うための処理を行う不図示の全銀ホストコンピュータを含む。全銀システムGでは、全銀ホストコンピュータに振込元や振込先、振込金額等の情報の含まれる全銀データを送付することで、異なる金融機関間での送金を行うことができる。
ネットワークNは、例えば、インターネットや、LAN(Local Area Network)や、携帯電話網の何れか又はこれらを組み合わせたネットワークにより実現される。
本実施形態に係る振込システムSでは、図1に示すようにユーザにより作成された全銀フォーマットもしくは仲介事業者の専用フォーマットが、ユーザ端末2によってアクセスされるWebサービス又は専用API(Application Programing Interface)を介して管理サーバ1に送信される。また、専用APIは、振込システムSが提供する振込データの入力可能なインターフェースである。
全銀フォーマットは、全銀データのフォーマットであり、振込処理に必要な情報の入力を要する。また、専用フォーマットは、本実施形態に係る管理サーバ1で全銀データを生成する際に必要な情報の入力を要するフォーマットである。本実施形態に係る管理サーバ1では、何れのフォーマットを受信しても全銀データを出力可能である。
また、全銀データは、全銀ホストコンピュータにおける異なる金融機関間での送金処理に必要な情報である。本実施形態では、全銀フォーマットや専用フォーマットは、ユーザ端末2においてユーザにより作成して管理サーバ1に送信されているが、これに限らず、振込システムSの外から取得しても良い。管理サーバ1により受信された全銀フォーマットもしくは専用フォーマットは、受信された順に振込待ちキューを作る。
管理サーバ1は、図1に示すように定期的に送金バッチ処理を実行する。例えば、管理サーバ1は、振込待ちキューの先頭の全銀データから順に仲介事業者のデータベースの残高情報を参照しつつ振込処理を行い銀行のシステムが提供する銀行APIに送信する。振込情報としての全銀データは、銀行APIを介して全銀システムGに送信される。銀行APIは、銀行側のシステムへのアクセスのために提供されるインターフェースである。
振込先口座3は、全銀システムGに全銀データが送信されることで、予めユーザにより振込原資が入金された原資用口座5から振込元口座4を介して振込先口座3に金銭が振り込まれる。ここで、原資用口座5とは、振込システムSを利用する複数のユーザから振込原資を入金するための口座である。複数のユーザから振り込まれた振込原資は、ユーザ毎に管理サーバ1のデータベース上で管理されている。
また、管理サーバ1は、定期的に残高反映バッチ処理を行っている。これにより、管理サーバ1は、振込先口座3への振込が完了した場合に銀行APIを介して残高情報を取得する。管理サーバ1は、データベースに記憶されている企業アカウントの残高情報に取得した残高情報を反映させる。以上により、本実施形態に係る振込システムSにおける振込処理が完了する。詳細な振込処理については、後述する。
また、本実施形態に係る振込システムSは、チャージ処理、決済処理、入出金処理、送金処理等が実行可能である。チャージ処理は、ユーザ端末2において使用可能な電子マネーの追加を専用アプリの操作により行う処理である。専用アプリは、ユーザ端末2等にインストールされたアプリケーションソフトウェアであり、ネットワークNを介して管理サーバ1に各種処理の指令を出力することができる。決済処理は、ユーザ端末2において専用アプリの操作により行われた電子マネーによる決済の処理である。決済処理には、商取引だけでなく利用者が支援するスポーツのチームや特定の団体への投げ銭や寄付等も含まれる。
入出金処理は、ユーザ端末2において専用アプリの操作により電子マネーを金融機関の口座やATMに入出金する処理である。送金処理は、ユーザ端末2において専用のアプリの操作によってユーザ端末2において管理される電子マネー又は指定した口座に預けられた資金を指定した別の口座や他の専用アプリ利用者のユーザ端末2に送金する処理である。
指定された金融機関の口座への送金処理(振込処理)は、専用アプリの操作の他に送金先の口座情報に基づいて作成された全銀データや専用フォーマットをAPI接続等により管理サーバ1に送信することで実行可能である。詳細は、後述する。
他の専用アプリ利用者へ送金する処理は、専用アプリの操作の他にCSVファイルのアップロードやAPI接続による管理サーバ1へのデータ送信によっても実行可能である。また、本実施形態に係る振込システムSに係る管理サーバ1では、専用アプリ使用時にSMS(Short Message Service)認証を行うために専用アプリの使用開始登録時に携帯電話の電話番号の登録が必要となっている。このため、本実施形態に係る管理サーバ1は、記憶部45に専用アプリユーザ毎の電話番号情報を記憶しており、専用アプリユーザ間での送金処理時に必要な情報が専用アプリユーザの電話番号のみで口座番号等の口座情報を入力する必要がなくなっている。なお、管理サーバ1における専用アプリユーザ間での送金処理時に必要な情報は、これに限らず適宜設定可能である。例えば、管理サーバ1は、予め登録された専用アプリユーザのメールアドレス情報に基づいて専用アプリユーザ間での送金処理を実行しても良い。
また、振込システムSで実行可能な処理は、これに限らず、一部でも良いし、他の処理を含んでいても良い。例えば、振込システムSに係る管理サーバ1は、ネットワークNに接続する端末間でのメッセージ、静止画、動画、絵柄等のコンテンツの送受信を行うSNS(Social Network Service)等を提供するための処理を行っても良い。更に、管理サーバ1の処理において提供されるSNSは、上述の各種の処理を開始させる機能を備えても良い。
<管理サーバ>
次に、管理サーバ1の一例について説明する。図3は、本発明の一実施形態に係る管理サーバ1のハードウェアの構成を示すブロック図である。
管理サーバ1は、図3に示すように、CPU(Central Processing Unit)40と、ROM(Read Only Memory)41と、RAM(Random Access Memory)42と、入力部43と、出力部44と、記憶部45と、通信部46と、電源部47と、バス48と、入出力インターフェース49と、を備えている。
CPU40は、ROM41に記録されているプログラム、又は、記憶部45からRAM42にロードされたプログラムに基づいて各種の処理を実行する。RAM42には、かかるプログラム以外にも、CPU40が各種の処理を実行する上において必要なデータ等も適宜記憶される。
CPU40、ROM41及びRAM42は、バス48を介して相互に接続されている。このバス48にはまた、入出力インターフェース49も接続されている。入出力インターフェース49には、入力部43、出力部44、記憶部45、通信部46及び電源部47が接続されている。
入力部43は、キーボードやマウス等で構成され、ユーザの指示操作に応じて各種情報を入力する。
出力部44は、液晶ディスプレイ等で構成され、CPU40が出力する画像データや映像データに対応する画像や映像を出力する。
記憶部45は、DRAM(Dynamic Random Access Memory)等の半導体メモリで構成され、各種データを記憶する。本実施形態に係る振込システムSでは、記憶部45にユーザのアカウント情報や口座の残高情報等を記憶するデータベースが設けられている。
通信部46は、ネットワークNを介して他の装置(例えば、ユーザ端末2や全銀システムG)との間でCPU40が通信を行うための制御を行う。
電源部47は、外部電源に接続されることによって管理サーバ1の各部に電力を供給可能に構成される。
次に、管理サーバ1の機能的構成について図4を用いて説明する。図4は、図3の管理サーバ1の機能的構成のうち、振込処理を実行するための機能的構成を示す機能ブロック図である。
まず、管理サーバ1の振込処理を実行する各機能ブロックについて説明する。本実施形態の制御部50は、図4に示すように、通信処理部51と、出力処理部52と、入力処理部53と、振込情報取得部54と、口座選択部55と、振込処理部56と、利用情報管理部57と、を有する。
通信処理部51は、外部の機器と通信を行うための処理を行う。例えば、ユーザ端末2から送信された振込データを通信部46が受信した場合に、通信処理部51は、受信した振込データを後述する振込情報取得部54に伝達する。
出力処理部52は、出力部44の画面に画像を表示する制御を行う。例えば、記憶部45に記憶されている管理ウェブサイトの画面を出力部44の画面に表示する制御を行う。これにより、管理ウェブサイトの画面は、管理サーバ1の出力部44の画面に表示され、仲介事業者により閲覧可能となる。
入力処理部53は、入力部43に入力された仲介事業者による操作を受け付ける処理を実行する。例えば、入力処理部53は、仲介事業者による入力部43への振込システムSの管理や後述の振込処理を行うための入力操作を受け付ける。
振込情報取得部54は、振込先に指定された振込先口座3の金融機関情報としての振込データを取得する。本実施形態では、振込データは、例えば後述する図7に示すような振込名義人や振込日、金融機関コード、支店コード、科目、口座番号、口座名義人、金額、明細ID、タイトル等が入力された専用フォーマットのCSVファイルに含まれる。当該CSVファイルは、ユーザにより作成されたファイルである。振込情報取得部54は、例えば、通信処理部51が受け付けた振込データを取得する。
口座選択部55は、振込データに含まれる振込先金融機関に基づいて複数の登録金融機関の中から振込先口座3へ振込むための振込元口座4を選択する。登録金融機関は、振込元候補の口座が開設された金融機関である。
振込先金融機関に基づいた選択の具体例としては、例えば管理サーバ1の記憶部45に手数料に関する情報を記憶させたテーブルを参照して選択する方法や振込処理毎に複数の登録金融機関の口座毎の手数料を算出比較して選択する方法がある。テーブルには、取り扱いのある複数の金融機関それぞれに対応する振込元口座4が予め登録されている。
口座選択部55は、テーブルを参照することで振込データに含まれる振込先金融機関に対応した振込元口座4を割り出し、振込先口座3へ振込むための振込元口座4を選択する。本実施形態では、複数の金融機関と振込元口座4の対応関係は、振込手数料が最も安くなるように設定している。しかし、複数の金融機関と振込元口座4の対応関係は、目的に応じて適宜設定可能である。
また、処理毎に手数料を算出して比較する方法では、記憶部45に、取り扱いのある複数の金融機関それぞれについて、振込元の金融機関と振込金額毎の手数料を記憶させている。口座選択部55は、振込先金融機関と振込金額に基づいて複数の登録金融機関の口座それぞれの手数料を算出する。口座選択部55は、算出した各手数料を比較して最も安い振込元口座4を割り出す。本実施形態では、振込手数料が安くなるように行われる。しかし、選択条件は、目的に応じて適宜設定可能である。このように選択条件は、目的に応じて適宜設定可能である。
振込処理部56は、口座選択部55の選択結果に基づいて全銀データを出力する。例えば、振込処理部56は、口座選択部55の選択結果に基づいて全銀データを生成し通信処理部51に指令して通信部46を介して銀行APIに全銀データを出力する。
また、振込処理部56は、後述の図5に示すように複数の登録金融機関の口座である第1口座の残高情報が閾値を下回る場合、第1口座と異なる第2口座から第1口座に資金を移動するための処理を実行する。
利用情報管理部57は、複数の登録金融機関の口座の残高情報を取得可能である。例えば、利用情報管理部57は、定期的に実行される残高反映バッチ処理により、銀行APIを介して複数の登録金融機関の残高情報を取得し、記憶部45のデータベースに記憶させる。また、利用情報管理部57は、複数の登録金融機関の何れかの残高が所定残高を下回る場合、通知情報としてのアラートを出力する。アラートの出力先としては、例えば管理サーバ1やユーザ端末2となる。なお、利用情報管理部57が複数の登録金融機関の残高情報を取得するタイミングは、残高反映バッチ処理のタイミングに限られず、例えば振込システムSの管理者によって入力部43に残高情報取得の指令が入力されたタイミングでも良い。
また、管理サーバ1の利用情報管理部57は、管理用ウェブサイトのアクセス可能なユーザの許可ID情報をデータベースに記憶可能である。管理サーバ1の利用情報管理部57は、ユーザにより管理用ウェブサイトにアクセスがあった場合に、データベースに予め記憶した複数の許可ID情報とアクセスユーザのID情報を比較し、アクセスユーザのID情報と一致する許可ID情報がある場合に、アクセスユーザに管理用ウェブサイトへのアクセスを許可する。また、管理サーバ1の利用情報管理部57は、利用者情報を取得可能であり、取得した利用者情報であるID情報を記憶部45のデータベースに記憶させる。
<振込処理>
次に、本実施形態に係る振込システムSで実行される振込処理における動作について図5~11を用いて説明する。図5は、本発明の一実施形態に係る振込処理を説明する模式図である。図6は、本発明の一実施形態に係る管理用ウェブサイトの一例を示す模式図である。
図7は、本発明の一実施形態に係る専用フォーマットのCSVファイルの一例を示す模式図である。図8は、本発明の一実施形態に係る管理用ウェブサイトでの送金ジョブ一覧の一例を示す模式図である。図9は、本発明の一実施形態に係る管理用ウェブサイトでの入出金明細の一例を示す模式図である。図10は、本発明の一実施形態に係る振込処理のうち口座選択処理の一例を示すフローチャートである。図11は、本発明の一実施形態に係る振込処理のうち残高管理処理の一例を示すフローチャートである。
まずは、本実施形態に係る振込システムSによる振込の流れについて説明する。まず、管理サーバ1は、上述のようにユーザにより振込データが入力される。例えば、振込データには、振込先の銀行や支店名、口座番号が入力される。次に、振込原資が、仲介事業者の指定する指定口座としての原資用口座5へユーザによって入金される。
本実施形態では、振込原資は、振込データが管理サーバ1に送信されてから原資用口座5に入金されているが、これに限らない。例えば、振込原資は、振込データが管理サーバ1に送信される前のタイミングで原資用口座5に入金されても良い。
本実施形態に係る管理サーバ1における振込データの入力方法には、振込データを作成し、データを管理用ウェブサイトの管理画面にアップロードする方法や管理用ウェブサイトに直接入力する方法がある。振込データをアップロードする場合、振込データは、専用フォーマットで作成される。また、振込データは、上述のように専用APIを介して管理サーバ1に入力しても良い。
次に、図5を用いて、本実施形態に係る振込システムSによる振込処理における資金の流れについて説明する。まず、振込データが管理サーバ1に送信される。振込原資が原資用口座5から振込元口座4に移動される。振込元口座4は、図5に示されるA銀行、B銀行、C銀行、D銀行のそれぞれに開設された口座である。振込原資は、振込処理時にA~D銀行の何れかの振込元口座4に振り込まれる。A銀行、B銀行、C銀行、D銀行のそれぞれの振込元口座4は、振込先口座3に振り込む際に振込元として使用する口座である。
また、本実施形態では、原資用口座5は、振込システムSを保有する仲介事業者により管理される。しかし、原資用口座5は、ユーザにより管理される口座でも良い。また、図7に示す管理用ウェブサイトの例において、振り込まれた金額(送金可能金額)は、ユーザにより確認可能である。また、コンピュータによって実現される振込システムSには、A~D銀行のそれぞれの口座に対応する口座情報が設定されている。
また、振込システムSでは、A~D銀行のそれぞれの振込元口座4の間で資金移動を行う処理を実行でき、特定された振込元口座4に資金を移動が可能である。従って、振込システムSは、ユーザからの振込原資の振込先口座3への振込を受け付けると、A銀行、B銀行、C銀行、D銀行のそれぞれの口座の中から振込元口座4を特定し、特定された振込元口座4に資金を移動させる。例えば、A銀行の口座が振込元口座4として特定された場合、振込システムSは、B~D銀行のそれぞれの口座から必要な資金をA銀行の口座に移動させる。
振込システムSは、振込元口座4に資金を移動させた後に振込元口座4から振込先口座3に資金を移動する振込処理を実行する。なお、振込システムSによるA~D銀行の口座間の資金移動のタイミングは、これに限らず、例えば振込依頼を受けたタイミングや振込処理が完了したタイミングでも良い。この場合、振込システムSは、A~D銀行のそれぞれの口座の残高を確認して予め設定した所定残高を下回っていないか確認し、所定残高未満の口座に所定残高以上となるように資金移動を行う。
振込システムSは、上述のように図5に示すような最適な振込方法を選択し振込処理を実行する。図5の例では、振込手数料を抑制するために、同じ金融機関の口座を利用する同行間振込を行うように振込元口座4を設定する。例えば、B銀行の口座を有する振込先にはB銀行の振込元口座4から振込処理を実行し、C銀行の口座を有する振込先にはC銀行の振込元口座4から振込処理を実行し、D銀行の口座を有する振込先にはD銀行の振込元口座4から振込処理を実行する。このように、振込先の指定口座の銀行と同じ銀行の振込元口座4から振込処理を実行することで、振込システムSにおける振込手数料を0とすることができる。
振込先の銀行に対応する口座を振込システムSが有していない場合もある。図5の例では、振込先の1つがA~D銀行に対応する銀行の振込元口座4を有していないため、振込システムSは、当該振込先に対する振込手数料が最も安い振込元口座4を選択する。本実施形態では、振込システムSは、振込手数料が最も安いA銀行の振込元口座4を選択して当該口座から振込処理を実行する。この場合、コスト低減の観点から振込手数料が低い銀行の振込元口座4が選択される。また、本実施形態に係る振込システムSでは、選択された振込元口座4に十分な資金がない場合は、他の口座から選択された振込元口座4に資金を移動する。
このように、本実施形態に係る振込システムSでは、振込元口座4は、当該口座の銀行と振込先口座3の銀行とが同じになるように特定される。また、振込先口座3の銀行と同じ銀行の振込元口座4がない場合には、振込元口座4は、振込手数料が最も安くなる口座が特定される。詳細は、後述する。
なお、この振込元口座4の特定は、ユーザからの指定であっても良い。また、本実施形態に係る原資用口座5は、振込元口座4と別に開設されているが、共通としても良い。この場合、振込原資は、予めA~D銀行の何れかの振込元口座4に振り込まれる。
また、振込システムSは、振込データに基づいて振込人名としてユーザの名称が表示されるように、送金受取企業(又は個人)の振込先口座3に振込処理を実行する。即ち、振込先に入金されるとユーザによる振込であることを示す振込元情報が送金受け取り企業(又は個人)によって確認可能となる。
また、原資用口座5に入金した残高や送金可能額等は、図6に示す管理用ウェブサイトにてユーザにより確認可能である。管理用ウェブサイトは、左側の上から送金可能金額、送金ボタン、送金一覧ボタン、入出金明細ボタン、設定ボタン、管理画面移行ボタンが表示されている。送金ボタンは、押すことで振込データの入力画面に移行する。送金一覧ボタンは、押すことで後述する図8に示す送金一覧画面に移行する。入出金明細ボタンは、押すことで後述する図9に示す入出金明細画面に移行する。設定ボタンは、押すことで管理用ウェブサイトの設定を変更可能な設定画面に移行する。管理画面移行ボタンは、押すことで振込システムSのメインメニュー画面である管理画面に移行する。
また、図6右側上段には、送金可能額の詳細が表示されている。図6右側上段のうち左側には、企業アカウントの残高が記載されており、右側には、企業アカウントの残高と立替可能額との合計金額が記載されている。本実施形態に係る振込システムSでは、立替サービスに登録された企業アカウントについては、企業アカウントの残高を超える額でも事前に設定された立替可能額までは、振込処理を行うことができる。また、図6右側下段には、契約条件が表示されている。
また、この例の振込システムSでは、上述のようにいわゆる従来の全銀データを振込データとして入力することができる。また、振込データは、上述のように専用フォーマットでの入力や管理用ウェブサイトでの入力が可能である。専用フォーマットは、例えば、図7に示すようなCSVファイルである。専用フォーマットには、行毎に振込案件が記載される。また、各振込案件には、振込名義人、振込日、金融機関コード、支店コード、科目、口座番号、口座名義人、金額、明細ID、タイトルが記載される。
なお、振込元名称等の専用フォーマットに入力が必要な項目は、これに限らず、任意に設定可能である。本実施形態では、上述のように当該CSVファイルを管理用ウェブサイトにアップロードして振込データを入力する。また、振込システムSへ入力する振込データの形式は、上述のように専用フォーマットの他に、全銀フォーマットでも良い。
振込データが入力されると、入力した振込内容は、図8に示すような送金ジョブの一覧に表示される。図8に示す管理用ウェブサイトの例において、未承認のジョブや送金予約中のジョブや送金後のジョブの送金履歴は、ユーザにより確認可能である。なお、図8に示す管理用ウェブサイトは、左側の上から送金可能金額、送金ボタン、送金一覧ボタン、入出力明細ボタン、設定ボタン、管理画面移行ボタンが表示されている。各ボタンの機能は、図6で説明した各ボタンと同様の為、省略する。
図8に示す管理用ウェブサイトの右側には、入力した振込データについて、上から未承認の案件、送金予約された案件、送金履歴が表示される。また、それぞれ左から題名及び振込件数、振込金額及び手数料、振込ステータス、振込処理日が表示されている。また、処理中にエラーが発生したものは、エラーメッセージが表示されている。
また、振込処理を行った後の残高は、図9に示す入出金明細に表示される。図9に示す管理用ウェブサイトは、左側の上から送金可能金額、送金ボタン、送金一覧ボタン、入出力明細ボタン、設定ボタン、管理画面移行ボタンが表示されている。各ボタンの機能は、図6で説明した各ボタンと同様の為、省略する。図9に示す管理用ウェブサイトの右側には、行毎に振込処理後の案件情報が記載されている。それぞれの行には、処理日時、入出金種別、入金額、出金額、手数料、残高が表示されている。入出金種別は、処理内容が記載される。手数料は、処理時に発生した手数料が記載される。残高は、振込処理後の企業アカウントの残高が記載される。図9に示す管理用ウェブサイトの入出力明細において、振込処理の結果や残高等の情報は、ユーザにより確認可能である。
次に、本実施形態に係る振込処理について、図10、11を用いて説明する。図10は、本発明の実施形態に係る振込処理のうち口座選択処理の流れを説明するフローチャートである。図11は、本発明の実施形態に係る振込処理のうち残高管理処理の流れを説明するフローチャートである。
また、振込システムSは、振込データを取得して振込元口座4を選択する口座を選択する機能を有する。即ち、管理サーバ1の制御部50は、口座選択処理を実行する。本実施形態では、口座選択処理は、送金バッチ処理のタイミングで実行される。まず、振込情報取得部54は、振込待ちキューの振込データから振込先口座3の金融機関の情報を取得する(ステップS10)。次に、口座選択部55は、記憶部45に記憶されたテーブルを参照して取得した振込先口座3の金融機関の情報に基づいて振込元口座4を選択する(ステップS11)。
次に、振込処理部56は、選択した振込元口座4を出力して(ステップS12)、処理を終了させる。本実施形態に係る管理サーバ1の制御部50は、出力された振込元口座4の選択結果に基づいて振込先金融機関の振込先口座3へ振込むために全銀データを出力する処理を実行する。
次に、振込システムSでは、振込元口座4の残高が所定残高を下回らないかを確認し、残高調整又は残高不足を通知する通知情報を出力する残高管理処理を実行する。即ち、管理サーバ1の制御部50は、振込処理実行時に残高管理処理を実行する。本実施形態では、残高管理処理は、振込処理時に実行される。しかし、残高管理処理の実行タイミングはこれに限らない。例えば、残高管理処理は、振込処理前に実行されても良い。
まず、利用情報管理部57は、複数の振込元口座4の残高情報を取得し、選択された口座のうち残高が無い又は予め設定した所定残高を下回っている口座があるか否かを確認する(ステップS21)。選択された口座のうち残高が無い又は所定残高を下回っている口座がない場合は(ステップS21:NO)、処理をステップS25に移行させる。選択された口座のうち残高が無い又は所定残高を下回っている口座がある場合は(ステップS21:YES)、利用情報管理部57は、選択されていない口座のうち残高がある口座があるか否かを確認する(ステップS22)。
選択されていない口座のうち残高がある口座がある場合(ステップS22:YES)、振込処理部56は、残高のある口座から残高が無い又は閾値を下回っている口座に資金を移動して残高調整を行い(ステップS23)、処理をステップS25に移行させる。選択されていない口座のうち残高がある口座がない場合(ステップS22:NO)、利用情報管理部57は、残高不足を報せる通知情報を出力して(ステップS24)、処理をステップS25に移行させる。
次に、制御部50は、振込処理が完了したか否かを確認する(ステップS25)。振込処理が完了している場合、制御部50は、残高調整処理を終了させる(ステップS25:YES)。振込処理が終了していない場合、制御部50は、処理をステップS21に移行させる(ステップS25:NO)。なお、本実施形態に係る残高調整処理では、残高調整と通知情報の出力とを行っているが、何れか一方のみを実行する構成でも良い。
また、本実施形態の振込システムSを実現する情報処理装置としての管理サーバ1、プログラム及び送金方法は、複数の銀行の口座に関する口座情報を有し、振込先に指定される金融機関に基づいて、振込処理を実行する振込元となる金融機関の口座を選択する。情報処理装置としての管理サーバ1は、振込手数料を抑制するために同じ金融機関又は振込手数料が低い金融機関の口座が振込元になるように振込処理を実行する。
以上から本実施形態に係る管理サーバ1は、振込先に指定された振込先口座の金融機関情報を取得する振込情報取得部54と、金融機関情報に基づいて複数の登録金融機関の口座の中から振込先口座へ振込むための振込元口座4を選択する口座選択部55と、口座選択部55によって選択された振込元口座4の情報を含む全銀データを出力する振込処理部56と、を備える。
これにより、本発明によれば、異なる金融機関間での送金コストを調整する情報処理装置、プログラム及び送金方法を提供できる。また、予め入金元口座が登録されているため、入金処理の手間が省けより簡便に入金処理を行うことができる。
また、本実施形態に係る管理サーバ1の口座選択部55は、金融機関情報に基づいて振込先口座3への振込手数料を割り出し、複数の登録金融機関の口座のうち振込手数料が無料又は最も安くなる口座を振込元口座4として選択する。
これにより、本実施形態に係る管理サーバ1は、異なる金融機関間での振り込み等の送金をより低コストで行うことができる。
また、本実施形態に係る管理サーバ1は、複数の登録金融機関の口座のうち残高が所定残高を下回る口座がある場合、通知情報を出力するための処理を実行する。
これにより、ユーザや仲介事業者は、振込元口座4の残高不足により早く気づいて対処することができ、よりタイムリーに振込処理を実行できる。
また、本実施形態に係る管理サーバ1の振込処理部56は、利用情報管理部57が取得した複数の登録金融機関の口座である第1口座の残高が閾値を下回る場合、第1口座と異なる第2口座から第1口座に資金を移動するための処理を実行する。
これにより、振込元口座4がいつ残高不足になっても振込処理部56により自動で対処可能なため、残高不足により振込処理が中断することを抑制できる。
なお、本実施形態に係る振込システムSでは、原資用口座5への振込原資の入金のタイミングが振込処理前のため、振込処理前に振込原資の入金を確認する処理が行われる。しかし、これに限らない。例えば、振込システムSは、振込を立替で行う振込立替登録されたユーザ情報を記憶部45が記憶しており、振込データを受信した時にユーザ情報を確認して振込立替登録したユーザである場合、振込原資の入金を確認せずに振込処理を実施しても良い。この場合、立て替えられた振込原資は、例えば翌月に一括で原資用口座5に入金される。
また、本実施形態に係る振込システムSは、メンテナンス時間等、銀行側の問題により選択された振込元口座4から振込処理ができない場合は、別の振込元口座4を選択して振込処理を行う機能を有していても良い。この場合でも、振込手数料が掛からない又は低い振込元口座4を選択することが好ましい。
なお、振込システムSは、必ずしも振込手数料が0又は最安になるように口座を選択しなくても良い。例えば、振込システムSは、振込手数料が高くなるように口座を選択するように条件を設定してもよい。
また、本実施形態に係る管理サーバ1の制御部50は、振込処理開始前に、複数の承認者によって取得した振込データに基づいて振込処理を承認する処理を実行しても良い。
以上、本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
また、本実施形態における機能的構成は、演算処理を実行するプロセッサによって実現され、本実施形態に用いることが可能なプロセッサには、シングルプロセッサ、マルチプロセッサ及びマルチコアプロセッサ等の各種処理装置単体によって構成されるものの他、これら各種処理装置と、ASIC(Application Specific Integrated Circuit)やFPGA(Field‐ProgrammableGate Array)等の処理回路とが組み合わせられたものを含む。
例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。換言すると、図4の機能的構成及びその説明は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能がシステムに備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図4の例に限定されない。また、機能ブロックの存在場所も、図3、4に特に限定されず、任意でよい。また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
このようなプログラムを含む記録媒体は、ユーザ等にプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザ等に提供される記録媒体等で構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
以上を換言すると、本発明が適用される情報処理装置は、次のような構成を有していれば足り、各種各様な実施の形態を取ることができる。即ち、本発明が適用される情報処理装置、プログラム及び送金方法は、上記に記載された事項のうち一部又は全部を提供できる構成やステップを有していれば足りる。これにより、異なる金融機関間での通信技術を用いた送金コストを調整できる。