JapanNetBank
ジャパンネット銀行の振込用 CSV を生成処理をサポートするライブラリです。
(サンプル CSV)
1,33,1,1,1111111,カ)ニホンシヨウジ,1000,ジヤパネタロウ
1,33,1,1,2222222,カ)ヤマモトシヨウテン,1000,ジヤパネタロウ
1,33,1,1,3333333,ニホンコウギヨウ(カ,1000,ジヤパネタロウ
1,33,1,1,4444444,ササキシヨウカイ(カ,1000,ジヤパネタロウ
1,33,1,1,5555555,カトウハナコ,1000,ジヤパネタロウ
1,33,1,1,6666666,サトウタロウ,1000,ジヤパネタロウ
1,33,1,1,7777777,ザイ)マルマルキヨウカイ,1000,ジヤパネタロウ
1,33,1,1,8888888,イ-.マネ-(カ,1000,ジヤパネタロウ
1,33,1,1,9999999,イケダ(カ)ニホンジムシヨ,1000,ジヤパネタロウ
1,33,1,1,1234567,ミタブングテン(カ,1000,ジヤパネタロウ
2,,,,,10,10000,
振込用 CSV の詳細については下記を参照してください。
また、下記に基づいて振込手数料を算出できます。
- http://www.japannetbank.co.jp/web_all_baplus_manual.pdf
- 現在、組戻手数料には対応していません
- 手数料の変更には追随していく方針ですが、追随が遅れる可能性があります
Installation
Add this line to your application's Gemfile:
gem 'japan_net_bank'
And then execute:
$ bundle
Or install it yourself as:
$ gem install japan_net_bank
Usage
Generate CSV for transfer (1)
transfer_data = [
{
bank_code: '0123',
branch_code: '012',
account_type: 'ordinary', # ordinary / checking / savings
number: '0123456',
name: 'サトウキテコ',
amount: 1600,
},
{
bank_code: '0234',
branch_code: '023',
account_type: 'ordinary',
number: '0234567',
name: 'サトウハナコ',
amount: 3200,
}
]
csv_string = JapanNetBank::Transfer.from_hash_array(transfer_data).to_csv
# or csv_string = JNB::Transfer.from_hash_array(transfer_data).to_csv
puts csv_string #=> "1,0123,012,1,0123456,サトウキテコ,1600\r\n1,0234,023,1,0234567,サトウハナコ,3200\r\n2,,,,,2,4800\r\n"
Generate CSV for transfer (2)
row1 = JapanNetBank::Transfer::Row.new(
bank_code: '0123',
branch_code: '012',
account_type: 'ordinary', # ordinary / checking / savings
number: '0123456',
name: 'サトウキテコ',
amount: 1600,
)
row2 = JapanNetBank::Transfer::Row.new(
bank_code: '0234',
branch_code: '023',
account_type: 'ordinary',
number: '0234567',
name: 'サトウハナコ',
amount: 3200,
)
transfer = JapanNetBank::Transfer.generate do |t|
t << row1
t << row2
end
puts transfer.to_csv #=> "1,0123,012,1,0123456,サトウキテコ,1600\r\n1,0234,023,1,0234567,サトウハナコ,3200\r\n2,,,,,2,4800\r\n"
Parse CSV for transfer
puts csv_string #=> "1,0123,012,1,0123456,サトウキテコ,1600\r\n1,0234,023,1,0234567,サトウハナコ,3200\r\n2,,,,,2,4800\r\n"
transfer = JapanNetBank::Transfer.parse_csv(csv_string)
# or transfer = JNB::Transfer.parse_csv(csv_string)
transfer.each do |row|
puts row.record_type #=> "1"
puts row.bank_code #=> "0123"
puts row.branch_code #=> "012"
puts row.account_type #=> "ordinary" # ordinary / checking / savings
puts row.number #=> "0123456"
puts row.name #=> "サトウキテコ"
puts row.amount #=> 1600
end
Transfer fee
transfer_fee = JapanNetBank::Transfer.fee_for(bank_code: '0123', amount: 30_000)
# or transfer_fee = JNB::Transfer.fee_for(bank_code: '0123', amount: 30_000)
puts transfer_fee #=> 270