Skip to main content
When you lock a pay run, Flow Payroll builds a BACS payment file from its payslips. You download that file and upload it to your bank, and your bank makes the payments. There is nothing to assemble by hand.
Your payment format and BACS source account are set once per organisation. Until they are set, no payment file is generated for your pay runs. See setting up your payment details.

What the file contains

Each completed pay run has one payment file, identified by its pay schedule, tax year, pay frequency, and period. It holds:
  • One credit record per employee being paid, carrying their sort code, account number, account name, net pay, and payment reference.
  • The totals your bank reconciles against — the number of records, the number of employees, and the total amount.
  • A contra record debiting your own account, in the formats that require one.
Amounts are taken from each employee’s net pay on the locked payslip, so the file can only be produced once the period is locked. Files are named from your organisation, the tax year, and the period — for example Acme_2026-W25-260515-215906.txt. The whole name stays within 50 characters, because some banks reject longer ones.
Download links expire. If a link has gone stale, open the pay run again to generate a fresh one.

Setting up your payment details

Your payment configuration drives every file Flow Payroll generates for the organisation. A payment reference can mix static text with tokens — {payDate}, {payPeriodStart}, {payPeriodEnd}, {year}, {period}, and {frequency} — plus separator tokens for spaces, dashes, underscores, and slashes. References are truncated to 18 characters in the file, so keep them short.

Payment file statuses

On a partial success, the file you download pays only the employees who passed validation. Check the excluded list before you upload it.

When an employee is missing from the file

Every employee’s bank details are checked before they go into the file. Anyone who fails is listed against the pay run with the field that caused it. Account names are cleaned rather than rejected. Accents are stripped, the name is uppercased, anything outside A–Z, 0–9, space, hyphen, slash, ampersand, and full stop is removed, and the result is truncated to 18 characters. A long or accented name never blocks a file. Correct the details on the employee’s profile, then retry the payment file. A retry rebuilds the file with refreshed employee data, so anyone you have fixed is included.

Payment file formats

The NatWest file is comma-separated but must keep its .txt extension. Bankline rejects the same content saved as .csv.

The Standard 18 record

Each payment record in a Standard 18 file is 106 characters, with fixed positions: The contra record at the end of the payment lines carries your own account on both sides, the total of the file as its amount, and CONTRA in place of both account names.

Templates

These are sample files in each layout, with dummy sort codes, account numbers, and employee names. Flow Payroll generates your real file for you — use these to check a layout against what your bank expects, or to give your bank a sample before your first upload.
Column positions matter in this format. Open it in a plain text editor, never a spreadsheet.
Download BACS_Standard18.txt
One row per payment: sort code, account name, account number, amount, reference, then the transaction code. There is no header row.
Download BACS_Barclays.csv
Every row has 85 comma-separated fields, most of them empty. The 08 row names the account being debited; each 09 row is one employee’s payment.
Download BACS_Natwest.txt
The only format with a header row. Sort codes are written with dashes, and names are not uppercased.
Download BACS_Allica Bank.csv

Uploading the file to your bank

Download the file and upload it through your bank’s bulk payment channel — Bankline for NatWest, Barclays.Net or iPortal for Barclays, or your BACS bureau’s own submission service. Your bank validates the file again on its side and reports the total it is about to pay, so check that total against the pay run summary before you approve it.
Keep the file for your records. Together with the payslips and the payroll journal, it evidences what you paid and when.

Where to go next

Running a pay run

Take a period from open to locked and reported.

Payslips

Preview, download, and send payslips to your employees.

Payroll journals

Post payroll costs to your accounting system.

Payment API

Generate and fetch payment files programmatically.