Settlement
Remittance
Electronic Payment Advice (EPA)
This document describes the EPA file format. An EPA file contains Comma-Separated Values (CSV) with payment information. The EPA file format can be used in a single- or multicurrency environment.
To download an example of EPA file, click here.
1. EPA Format
The EPA format consists of two main elements:
- Header, contains consolidated information of the specific EPA file.
- Transaction details, single or multiple lines with transaction information.
1.1 Header
The header is the first line in the CSV file, figure one depicts the header and values.
The header is the first line within an EPA file and always starts with ‘H’ (for Header). Table one below describes the other variables in the header and their format.
Table 1: EPA Header Details
Variable Name: | Type: | Validation: |
---|---|---|
recordType | String(1) | Constant string with ‘H’ for Header |
settlementCurrency | String(3) | The settlement currency in ISO 4217, all caps. Example: “EUR” |
totalSettlementAmount | Integer | The total amount settled2. Example: 1259855 |
commissionAmount | Integer | The total amount of commission. Example: 37795 |
nrTransactions | Integer | The total number of transactions settled in this batch. Example: 975 |
reference | String | A unique settlement reference code that also has to be present in the bank transfer description of the settlement. Example: 435654554 |
date | YYYYMMDD | The date of settlement. Example: 20080403 |
bankAccount | String | The bank account to be used for settlements in IBAN format. |
The values between brackets stand for the maximum amount of characters
1.2 Transactions
Directly below the header line are the transactions. Every line corresponds with one single transaction. The amount of transactions in the EPA file is depicted in the EPA header. Figure two depicts the notation of EPA transactions.
Table 2: EPA Transaction Details
Variable Name: | Type: | Validation: |
---|---|---|
recordType | String(1) | Constant string with ‘D’ for Details |
mid | Integer | The Merchant ID |
exReference | String | Extra reference field (optional) |
pspReference | Integer | The unique transaction reference that was initially passed by the Payment Service Provider (PSP) during the authorization or capture phase. Generated by the PSP. Example: 1112072150544667 |
settlementAmount | Integer | The net settlement amount, with two digits in the fractional part but no decimal point. Example: 9765 for EUR 97.6511. This should equal the original transaction amount minus the commission (calculate first, then round to two digits after the decimal point). |
commissionAmount | Integer | The commission amount, with two digits in the fractional part but no decimal point. Example: 254 for EUR 2.5438 |
transactionDate | YYYYMMDD | The authorization date of the transaction. Please see below for more information. |
txAmount | Integer | The original transaction amount, with two digits in the fractional part but no decimal point. Example: 29950 for EUR 299.50 |
txCurrency | String(3) | The original transaction currency in ISO 4217, all caps. Example: EUR |
type | String | The transaction status type. Can be SETTLED/REFUNDED |
extra | String | Space for additional information (optional) |
The values between brackets stand for the maximum amount of characters
1.2.1 Separators
Lines should be terminated by a LF character (0x0A), a CR character (0x0D) or a combination CRLF (0x0D,0x0A). Fields are optionally enclosed by double quotes.
1.2.2 Refunds (returns/credits)
Commission amounts can be refunded to the merchant, but it is also possible not to refund the commission to the merchant. In the latter case, the commission amount in the CSV is set to ‘0’ and the transaction amount equals the (negative) settlement amount.
1.2.3 Transaction Types
SETTLED
The transaction settlement is included in this batch.
REFUNDED
A partial or full refund of a transaction.
1.2.4 Rounding
With intermittent rounding to 2 decimals, the total amount of all transction settlement amounts added up might not equal the settlement amount. The settlement amount mentioned in the EPA header should always equal the amount actually transferred to the bank account. The individual line items should be rounded to 2 decimals.
1.2.5 Method of Transmission
FTPS, S/FTP