Developer reference

ABA file technical specification.

The complete field-level definition of the Australian fixed-width Direct Entry format, including record structure, positions, lengths, padding, character and balancing rules.

120characters in every record
0 · 1 · 7required record sequence
.abarequired file extension
01
ABA file definition

Three fixed-width record types.

An ABA file has a .aba file extension. Each line is called a record. Every record is exactly 120 characters long and begins with a number identifying the type of record.

There is normally one Descriptive Record, one Detail Record for every payment, and one File Total Record at the end.

Header Record — Type 0Detail Records — Type 1File Total Record — Type 7
Example ABA file showing a Type 0 Header Record, several Type 1 Detail Records and a Type 7 File Total Record
Example ABA file structure: one Header Record, multiple Detail Records and one File Total Record. All names, BSBs, account numbers and payment details shown are fictitious.
02
ABA file structure

Full record definitions.

Positions are inclusive and count from character 1 of each 120-character record.

Type 0

Descriptive Record — Type 0

The Descriptive Record is the first line in the ABA file. It identifies the financial institution, the business supplying the file, the user identification number, the payment description and the processing date. The first character must always be 0.

Character positionLengthFieldFormat and purpose
11Record Type
  • Must contain 0.
  • Identifies the line as the Descriptive Record.
  • Must be the first record in the file.
2–1817Blank
  • Must be filled with spaces.
  • Reserved for the ABA file structure.
  • Must not contain business data.
19–202Sequence Number
  • Normally contains 01.
  • Must be numeric.
  • Must be right-justified and zero-filled.
  • Identifies the sequence of the logical file.
21–233Financial Institution Code
  • Contains the approved three-character financial institution abbreviation.
  • Identifies the bank receiving the file.
  • Must use the code confirmed by the user’s bank.
24–307Blank
  • Must be filled with spaces.
  • Separates the institution code from the user information.
  • Must not contain business data.
31–5626Name of User Supplying File
  • Contains the business, organisation or account name supplying the file.
  • Must not be blank.
  • Must be left-justified.
  • Must be padded with spaces to 26 characters.
57–626User Identification Number
  • Contains the six-digit User Identification Number required for the user’s banking facility.
  • It may be called an APCA Number, Direct Entry User ID or User Identification Number.
  • Depending on the bank and facility, the value may be bank-issued, bank-approved, a bank default or user-selected.
  • Must be numeric and zero-filled to six digits.
63–7412Description of Entries
  • Contains a short description of the payment batch.
  • May describe payroll, wages, suppliers or another batch purpose.
  • Must not be blank.
  • Must be left-justified and padded with spaces.
75–806Processing Date
  • Contains the date the file is intended to be processed.
  • Must use DDMMYY format.
  • Must not contain separators.
  • Must represent a valid calendar date.
81–12040Blank
  • Must be filled with spaces.
  • Reserved as the trailing section of the record.
  • Completes the record to exactly 120 characters.
Descriptive Record — Type 0 exampleFictitious data shown for illustration.
Example Type 0 Header Record from an ABA file
Type 1

Detail Record — Type 1

The Detail Record contains one individual payment instruction.

Character positionLengthFieldFormat and purpose
11Record Type
  • Must contain 1.
  • Identifies the line as an individual transaction record.
2–87Recipient BSB
  • Contains the BSB of the account being credited or debited.
  • Must use NNN-NNN format and include the hyphen.
  • Identifies the recipient’s financial institution, state and branch.
  • Leading zeroes must be preserved.
9–179Recipient Account Number
  • Contains the recipient’s bank account number.
  • Must not be entirely blank or all zeroes.
  • Must be right-justified and padded with spaces on the left.
  • Leading zeroes that form part of the account number must be retained.
181Indicator
  • Normally blank.
  • May contain N for new or varied account details.
  • May contain W, X or Y where withholding-tax rules apply.
  • A withholding-tax indicator overrides the normal indicator.
19–202Transaction Code
  • Contains a two-digit transaction code.
  • Identifies the type of debit or credit.
  • Must reflect the purpose of the transaction.
  • Common codes include 13, 50, 53, 54, 55, 56 and 57.
21–3010Amount
  • Contains the transaction amount in cents.
  • Must be numeric only and greater than zero.
  • Must not contain a dollar sign, comma or decimal point.
  • Must be right-justified and zero-filled to ten digits.
31–6232Title of Account
  • Contains the recipient account name.
  • Must not be blank.
  • Must be left-justified and padded with spaces on the right.
  • Identifies the intended destination account holder.
63–8018Lodgement Reference
  • Contains the payment reference.
  • Generally displayed on the recipient’s bank statement.
  • Must be left-justified and contain no leading spaces.
  • Must fit within 18 characters.
81–877Trace BSB
  • Contains the sender’s BSB.
  • Must use NNN-NNN format.
  • Identifies the source financial institution and branch.
  • Enables the transaction to be traced or returned if required.
88–969Trace Account Number
  • Contains the sender’s account number.
  • Must be right-justified and padded with spaces on the left.
  • Works with the Trace BSB to identify the originating account.
97–11216Name of Remitter
  • Contains the name of the business or person originating the payment.
  • May appear on the recipient’s statement.
  • Must not be blank.
  • Must be left-justified and padded with spaces.
113–1208Withholding Tax Amount
  • Contains any withholding tax amount in cents.
  • Must be numeric only.
  • Must be right-justified and zero-filled.
  • Normally contains all zeroes when withholding tax does not apply.
Detail Record — Type 1 exampleFictitious data shown for illustration.
Example Type 1 Detail Record from an ABA file
Type 7

File Total Record — Type 7

The File Total Record is the last line in the ABA file and confirms the total credits, debits and number of transactions.

Character positionLengthFieldFormat and purpose
11Record Type
  • Must contain 7.
  • Identifies the line as the File Total Record.
  • Must be the final record in the file.
2–87BSB Format Filler
  • Must contain 999-999.
  • Is a fixed value.
  • Distinguishes the File Total Record from a Detail Record.
9–2012Blank
  • Must be filled with spaces.
  • Reserved before the total amount fields.
21–3010File Net Total Amount
  • Contains the difference between total credits and total debits.
  • Must be expressed in cents, numeric only, right-justified and zero-filled.
  • Should contain all zeroes for a self-balanced file.
31–4010File Credit Total Amount
  • Contains the sum of all credit Detail Record amounts.
  • Must be expressed in cents, numeric only, right-justified and zero-filled.
41–5010File Debit Total Amount
  • Contains the sum of all debit Detail Record amounts.
  • Must be expressed in cents, numeric only, right-justified and zero-filled.
  • Normally equals the credit total in a self-balanced file.
51–7424Blank
  • Must be filled with spaces.
  • Separates the total fields from the record count.
75–806Number of Detail Records
  • Contains the total number of Type 1 records.
  • Includes any balancing record, but not Type 0 or Type 7 records.
  • Must be numeric, right-justified and zero-filled to six digits.
81–12040Blank
  • Must be filled with spaces.
  • Completes the record to exactly 120 characters.
File Total Record — Type 7 exampleFictitious data shown for illustration.
Example Type 7 File Total Record from an ABA file
03
Balancing record

How a self-balanced file works.

Additional Type 1 record

A balancing record is an additional Type 1 Detail Record. It offsets the total value of the payment records and normally uses the sender’s own BSB and account number.

Position and count

It is placed immediately before the File Total Record and is included in the Type 1 record count.

Totals

In a self-balanced file, the credit and debit totals are equal and the net total is zero. Bank requirements differ.

04
General formatting rules

Padding, amounts and line length.

  • ✓Every record must be exactly 120 characters.
  • ✓The file must use the .aba extension.
  • ✓Text fields are generally left-justified and padded with spaces on the right.
  • ✓Account-number fields are generally right-justified and padded with spaces on the left.
  • ✓Numeric fields are right-justified and padded with zeroes.
  • ✓Amounts are stored in cents without punctuation.
  • ✓Unused alphanumeric fields are filled with spaces.
  • ✓Unused numeric fields are filled with zeroes.
  • ✓Leading zeroes in BSBs and account numbers must be preserved.
  • ✓Records must use the line-ending format required by the receiving bank.
05
ABA character rules

Use the permitted character set.

For maximum compatibility, use straightforward letters, numbers, spaces and common punctuation.

LettersA–Z   a–z
Numbers0–9
Common permitted charactersspace   &   '   ,   -   .   /   +   $   !   %   ( )   *   #   =   :   ?   [ ]   _   ^   @
Empty optional fields: fill optional alphanumeric fields with spaces and optional numeric fields with zeroes.
06
Payday Super and ABA files

Preparing for more frequent payment workflows.

From 1 July 2026, Payday Super changes when employers must make super guarantee contributions. More frequent contribution and payroll workflows may increase the need for efficient payment-file preparation and validation.

Learn more on the ATO website →
07
Frequently asked questions

ABA file technical FAQs.

Is an ABA file the same as a CSV file?

No. A CSV is a flexible comma-separated text file. An ABA file is a strict fixed-width 120-character format required by Australian banks.

Can I open an ABA file in Excel?

You can open one, but Excel will not display it correctly because ABA files rely on exact character positions, not commas.

Can I open an ABA file in Notepad?

Yes. Notepad, VS Code or any plain-text editor will display the raw 120-character lines.

Is an ABA file encrypted?

No. The file itself is plain text. Security is provided by the TLS connection to your bank and by your online-banking authentication.

Does an ABA file contain bank account details?

Yes. Each detail record contains the recipient BSB, account number, account name and payment amount.

Can one ABA file contain multiple payments?

Yes. A single ABA file can contain thousands of detail records in one batch.

How many characters are in an ABA record?

Exactly 120 characters per record, excluding the newline.

What is record type 0?

The header or Descriptive Record that appears once at the start of every ABA file.

What is record type 1?

A Detail Record—one per individual payment transaction.

What is record type 7?

The trailer or File Total Record that appears once at the end of the file.

Do I need an APCA number?

Every ABA file contains a six-digit User Identification Number. The required value depends on your bank and banking facility. It may be a bank-issued ID, a bank-approved default or another six-digit value permitted by your bank. Check your bank’s instructions or contact them if you are unsure.

Do all banks require a balancing record?

No. Requirements vary by bank. ABAFlow selects the relevant setting when you choose your bank, but you should confirm your facility’s requirements before the first live run.

08
Why is my ABA file being rejected?

Common rejection reasons.

!

Incorrect record length

Each record must contain exactly 120 characters.

!

BSB is incorrectly formatted

Use NNN-NNN, for example 062-001—not 062001.

!

Account number is too long

The account-number field is limited to nine characters.

!

Amount contains formatting

Use 2500.00—not $2,500.00.

!

APCA number is missing or incorrect

Confirm the required value with your bank.

!

Unsupported characters

Remove symbols and unsupported special characters.

!

Incorrect balancing-record setting

A file may be rejected when a balancing record is added unnecessarily or omitted where required.

Ready to create your ABA file?

Convert your CSV to a bank-ready ABA file.

ABAFlow applies the fixed-width structure and validates every payment before download.

Convert CSV to ABA →