Using Generic Bank Payment File Formats

Learn how to structure your bank payments and manage their associated files using generic file formats.

Written By Grainne Reidy (Super Administrator)

Updated at January 17th, 2025

Introduction

In addition to the file formats for specific banks and e-payment formats, such as BACS & SEPA, the system also provides two generic formats. This lets you download all the information related to a specific Bulk Payment record from the system in a common format. You can then share it with other software providers/developers to build specific bank formats. 

Note

The word “generic” does not mean that this file will work for all bank or transaction types. It means that the bulk payment information will be exported with a common structure in two widely accepted formats.  This gives you the necessary data to use a third-party service or system that transforms the generic format into that of your bank's.

 
 
 

Selecting a generic file format

To select a generic format:

  1. Go to Bank Bank Accounts
  2. In your bank entry, click on A/C Details
  3. Under Online Banking, go to Type. Select one of the following:
    • Generic Export JSON Format (.json)
    • Generic Export XML Format (.xml)
  4.  Click Save.
 
 

Generic file structure 

File Information

BatchDate: Date of the Batch Payment (Date and Time).
BatchNumber: User-entered Identifier entered (String).
BatchPaymentTotal: Total amount from all payments within this file rounded to two decimal points.
CreationDate: Date when the batch was downloaded (Date and Time).
FileNumber: Internal 3 digits online file number (String).
NumberOfTransactions: Total number of payments made to beneficiaries within this file.
OnlineUserID: Given by the Bank and manually entered by system-user. It can be also called SUN (Service User Number), OIN, Customer ID, or Organization Identification.
PaymentID: Internal unique identifier (Integer).

Debtor Information

BankAccountNumber
BankCountryCode
BankCurrencyCode
BankIban
BankOnlineType
BankSortCode
BankSwiftCode
CompanyBaseCurrencyCode
CompanyCityTownName
CompanyCountry
CompanyCounty
CompanyName
CompanyStreetName

 Payment Line objects

BeneficiaryAddress1
BeneficiaryAddress2
BeneficiaryBankAccountNumber
BeneficiaryBankAddress1
BeneficiaryBankAddress2
BeneficiaryBankCity
BeneficiaryBankCountry
BeneficiaryBankCounty
BeneficiaryBankName
BeneficiaryCity
BeneficiaryCountry
BeneficiaryCounty
BeneficiaryCurrencyCode
BeneficiaryEmail
BeneficiaryIban
BeneficiaryID
BeneficiaryISOCountryCode
BeneficiaryName
BeneficiaryPostCode
BeneficiaryRoutingNumber
BeneficiarySortCode
BeneficiarySwiftCode
PaymentAmount
PaymentLine
PaymentReference

Info

The Beneficiary Routing Number and Beneficiary Swift Code are mutually exclusive. They both come from the Bank Swift Code field in the Supplier Account. If the supplier swift code only contains digits, then we output that into the Beneficiary Routing Number of the file. If it contains other letters/symbols then we output that under Beneficiary Swift Code.

 
 
 

Sample generic files

Sample Bulk Payment with two payments to beneficiaries

XML:

XMLBulkPaymentSample.xml

JSON:

JSONBulkPaymentSample.json