Zengin Format FB Data Generator & Validator

Upload a CSV of bank transfer recipients and generate a 全銀協 (Zengin) 120-byte fixed-length FB data file — the standard format for Japan domestic bank transfers (振込). Free, online, completely client-side. Your financial data never leaves your browser.

Step 1 — Sender & Transaction Settings

These values go into the Header record. Use half-width katakana (半角カナ) for names, or ASCII — the generator will convert automatically.

Step 2 — Upload or Paste Transfer Data CSV

Required columns (order flexible — use exact header names below):

beneficiary_bank_code,beneficiary_branch_code,account_type,account_number,beneficiary_name,amount,client_code 0001,001,1,1234567,ヤマダ タロウ,50000, 0002,123,2,9876543,スズキ ハナコ,125000, 0005,010,1,0001234,タナカ イチロウ,300000,

Column reference:

CSV columnDescriptionLength / Format
beneficiary_bank_code受取銀行コード (ABA-equiv.)4 digits
beneficiary_branch_code受取支店コード3 digits
account_type預金種目: 1=普通 2=当座 4=貯蓄1 digit
account_number受取口座番号up to 7 digits (right-aligned)
beneficiary_name受取人名 (half-width katakana)up to 30 chars
amount振込金額 (円, integer)up to 10 digits
client_code顧客コード (optional)up to 10 chars
Drop CSV here or click to browse

How it works

The Zengin (全銀協) format is a fixed-length 120-byte record standard defined by the Japanese Bankers Association for domestic bank-to-bank fund transfers. Most Japanese banks accept FB data files for bulk transfers (総合振込). Each file consists of exactly four record types:

Record typeByte 1CountPurpose
Header (ヘッダーレコード)"1"1Identifies sender, bank, date, and transfer category (振込=21)
Data (データレコード)"2"1 per transferBeneficiary bank, branch, account type, account number, name, amount
Trailer (トレーラーレコード)"8"1Total record count + total transfer amount checksum
End (エンドレコード)"9"1File terminator (spaces)

All fields use half-width characters (ASCII/半角). Text fields are left-padded with spaces; numeric fields are right-padded with zeros. The generator validates bank codes (4 digits), branch codes (3 digits), account numbers (up to 7 digits), amounts (integer yen), and beneficiary names (up to 30 half-width chars), then produces a downloadable .fb file containing CRLF-terminated 120-byte records.

Frequently asked questions

What is the Zengin format and who uses it?
The Zengin format (全銀協フォーマット) is the de facto standard file format for Japan domestic bulk bank transfers (総合振込). It is defined by the Japanese Bankers Association (全国銀行協会) and accepted by virtually every Japanese bank — including megabanks (三菱UFJ, みずほ, 三井住友), regional banks, and internet banks — through their corporate internet banking or EB (Electronic Banking) portals. Payroll departments, accounting teams, and finance software commonly use it to submit hundreds of transfers in a single file upload instead of entering them one by one.
What does "120-byte fixed-length record" mean?
Every record in the file is exactly 120 bytes long (in half-width ASCII characters). If a field is shorter than its defined length, it is padded with spaces (for text) or leading zeros (for numbers). If a record would be shorter than 120 bytes, the remaining bytes are filled with spaces. This rigid structure allows bank systems to parse the file by byte offset without needing delimiters. Lines are separated by CR+LF (Windows-style line endings, code 0x0D 0x0A).
Which account type code should I use?
Use 1 for 普通 (ordinary savings) — this is the most common type and covers standard personal and corporate savings accounts. Use 2 for 当座 (checking/current account) — typically used by businesses. Use 4 for 貯蓄 (investment savings). If you are unsure, ask the recipient for their 預金種目 — it is printed in their passbook or bank statement.
What character encoding should beneficiary names use?
The Zengin standard requires half-width katakana (半角カナ) for the beneficiary name (受取人名). Full-width characters, kanji, and hiragana are not accepted. Spaces in the name should be a single half-width space. This tool accepts half-width katakana directly or common ASCII representations. Stick to the Zengin permitted character set: digits 0–9, uppercase A–Z, half-width katakana ヲ–ン, and the special characters ( ) / ー 、 。 「 」 ・ (halfwidth). The maximum field length is 30 characters.
Is my data secure? Does it get sent to a server?
No data is ever sent to a server. This tool runs entirely in your browser using JavaScript's FileReader API, Blob, and TextEncoder. Your CSV (which may contain bank account numbers and transfer amounts) stays on your local machine. You can even disconnect from the internet after loading this page and the tool will still work fully. We do not store, log, or transmit any information you enter.
How do I upload the generated .fb file to my bank?
Each bank's corporate internet banking (法人インターネットバンキング) or EB terminal has a slightly different upload interface, but the process is generally: log into your business banking portal → go to 総合振込 (bulk transfer) → 外部データ取込 or ファイル送信 → select the .fb file → confirm totals → approve. The bank will show you a preview of the transfer count and total amount, which should match the Trailer record values. Contact your bank's corporate banking support if you need help locating the upload feature.