Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

銀行マスタ検索API作成に関して

More than 1 year has passed since last update.

銀行マスタ検索API作成に関して

フロントで外部APIを利用する場合:

●銀行 支店 マスタで使えそうなライブラリってあるの?
スクリーンショット 2019-11-08 16.38.45.png

上記で割りとよさそうな④を利用しようと思ったが、金融機関の候補例が20までが上限だったり色々デメリットもある。
上記で⑥を利用しようと思ったが、上記④のデメリットもカバーできるが個人運営というのが唯一引っかかる。

フロントで外部APIを利用するのは、急に使えなくなるといったことがどれくらいあるのか?
などの懸念もあり結果的にバックエンドで銀行マスタAPIを実装してフロントに渡す結論になった。

バックエンドでAPIを実装する場合:

下記のサイトからマスタのCSVをダウンロードし、CSVをDBに取込する。
http://ykaku.com/ginkokensaku/index.php
上記サイトの『<全データダウンロード・zip形式>リンクよりzipファイルをダウンロード後、解凍しCSVをDBに取込する。
上記のサイトのデータは更新タイミングはルールがなく、
http://ykaku.com/ginkokensaku/ment.html
1ヶ月に3回の時もあれば、更新がない月もあるので、更新周期(月1回)と決めて自動更新を行うようにバッチを実装する。

銀行マスタ検索用API実装

●検索画面イメージ
スクリーンショット 2019-11-08 16.58.16.png

●APIのroot:

メイン銀行API:
Route::any('/bank/{keyWord}', 'ApiBankController@getBank');
銀行API:
Route::any('/main/bank', 'ApiBankController@getMainBank');
支店検索API:
Route::any('/branch/{bankCode}/{keyWord}', 'ApiBankController@getBranch');

●フロントに渡すAPI(例:先頭が「み」の銀行のみ)
検索時はPGで平仮名をカタカタに変換してからDBのカタカタを検索対象にして検索を行う。
①銀行検索用
スクリーンショット 2019-11-08 17.04.43.png

②支店検索用
スクリーンショット 2019-11-08 17.06.08.png

参考サイト

http://ykaku.com/ginkokensaku/index.php
https://qiita.com/yuki_chrono/items/f03ce8b4036390927d86
https://bankcode-api.appspot.com/
https://bank.teraren.com/

kerry
自社メディアのバックエンドエンジニアです。
wiz_inc
Wizは、最新のIoTやICTサービスをお客様に届ける「ITの総合商社」です
http://012grp.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away