Statement and history export in ABO file format: Difference between revisions
(Initial version) |
m (remove warning of active development) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
= About the file format = | = About the file format = | ||
Latest revision as of 21:22, 11 January 2024
About the file format
ABO is a file format for exchanging financial data mainly used in the Czech and Slovakian market.
It's a fixed-width format which is capable of importing transaction requests or exporting details of already completed transactions.
Usage in Barion
Barion only uses ABO for exporting past transactions either in daily statement generation or in the manual export of transaction history. Our format is based on the extended ABO format used by Česká spořitelna.
Structure
ABO files contain fixed-length fields and consist of two types of rows:
- one header row (code 074)
- zero or more transaction rows (code 075)
Header row
The header row is the first row in an ABO file and contains general information about the export in question and the account which's history is contained within.
Fields in header row
Number | Name | Length | Description |
---|---|---|---|
1 | Field code | 3 | Always contains string "074" |
2 | Account number of client | 16 | The unique alphanumeric identifier of the Barion account, case sensitive. |
3 | Client name | 20 | The name of the wallet to which the exported account belongs to.
The name is cut off after 20 characters and padded with spaces from the right if too short. |
4 | Date of opening balance | 6 | The date from which the export contains transactions in the account. |
5 | Opening balance | 14 | The opening balance of the account before the first exported transaction. |
6 | Sign of opening balance | 1 | - |
7 | Closing balance | 14 | The closing balance of the account after the last exported transaction. |
8 | Sign of closing balance | 1 | - |
9 | Sum of DEBIT transactions | 14 | The sum of all transactions that are categorized as DEBIT of DEBIT REVERSAL by the posting code. |
10 | Sign of sum of debit transactions | 1 | - |
11 | Sum of CREDIT transactions | 14 | The sum of all transactions that are categorized as CREDIT of CREDIT REVERSAL by the posting code. |
12 | Sign of sum of credit transactions | 1 | - |
13 | Statement sequence number | 3 | the serial number of this statement withing the ABO file, should always be "001". |
14 | Date of statement | 6 | The date on which this statement was generated. |
15 | Filler | 14 | Contains only whitespaces. |
Summary fields
Fields (9-10) and (11-12) contain a summary of transactions based on the transaction categorization described in "Transaction categorization in ABO".
The opening balance and closing balance should relate to these summaries in the following way:
Closing balance = Opening balance - Debit summary + Credit summary
The daily statement export will always follow this rule, however it is possible that manual transaction exports will not as they can be filtered.
Transaction rows
Each transaction row provides details about a transaction in which the account mentioned in the header row is affected.
Fields in transaction rows
Number | Name | Length | Description |
---|---|---|---|
1 | Field code | 3 | Always contains string "075" |
2 | Client account number | 16 | The unique alphanumeric identifier of the Barion account, case sensitive. |
3 | Counter-account number | 16 | Not used by Barion |
4 | Document number | 13 | Not used by Barion |
5 | Transaction Amount | 12 | - |
6 | Posting code | 1 | See "Transaction categorization in ABO" |
7 | V-symbol | 10 | Not used by Barion |
8 | K-symbol | 10 | Not used by Barion |
9 | S-symbol | 10 | Not used by Barion |
10 | Date of Transaction | 6 | The date on which this transaction was completed. |
11 | Extra information | 20 | Contains the name of the Barion transaction type. Cut to 20 characters, padded from the right with spaces if needed. |
12 | Item change code | 1 | Not used by Barion |
13 | Data type | 4 | See "Data type field" |
14 | Due date | 6 | Not used by Barion as the export only contains past transactions |
15 | Message for payee #1 | 35 | Free text message for the payee of this transaction
Treated as one field which is 140 characters long. |
16 | Message for payee #2 | 35 | |
17 | Message for payee #3 | 35 | |
18 | Message for payee #4 | 35 | |
19 | Message for payer | 35 | Not used by Barion |
20 | Debited on | 6 | Not used by Barion, filled with "010101" |
21 | Item | 25 | Not used by Barion |
22 | Reference | 16 | The short identifier of this transaction in the Barion system. |
23 | ISO transaction amount | 15 | - |
24 | ISO transaction currency | 3 | 3-character ISO code of the transaction currency |
25 | Name of counter-account | 35 | The name belonging to the account on the other side of the transaction |
26 | Change rate of the transaction currency | 11 | Not used by Barion, always 1 |
27 | Change rate of the account currency | 11 | Not used by Barion, always 1 |
28 | V-symbol 2 | 10 | Not used by Barion |
29 | Description of transaction #2 | 35 | Contains the id of the payment as provided by the POS |
30 | Description of transaction #3 | 35 | Contains the id of the transaction as provided by the POS |
31 | Description of transaction #4 | 35 | Contains the id of the order as provided by the POS |
32 | SWIFT code of the bank of the counter-account #1 | 35 | Not used by Barion |
33 | SWIFT code of the bank of the counter-account #1 | 35 | Not used by Barion |
34 | Fee details #1 | 35 | Not used by Barion |
35 | Fee details #2 | 35 | Not used by Barion |
36 | Original transaction amount | 35 | Not used by Barion |
37 | - | 35 | - |
38 | Payer bank reference | 35 | Contains the bank authorization code of the transaction |
39 | SEPA info #1 | 35 | Not used by Barion |
40 | SEPA info #2 | 35 | |
41 | SEPA info #3 | 35 | |
42 | CL fee type description | 35 | Not used by Barion |
43 | CL fee specification #1 | 35 | Not used by Barion |
44 | CL fee specification #2 | 35 | |
45 | Payer note #1 | 35 | Barion long identifier of transaction |
46 | Payer note #2 | 35 | Barion long identifier of payment |
47 | Payer note #3 | 35 | Not used by Barion |
48 | Payer note #4 | 35 |
Data type field
The data type field consists of 3 parts and takes up 4 characters:
- the first character is always "1",
- the second character is "1" of the transaction is in CZK and "2" otherwise
- the third and fourth characters are "01" if the transaction lowers the account balance, "02" otherwise
Transaction categorization in ABO
In an ABO export, transactions are categorized into four categories with the following properties.
Category name | Posting code | Contributes to summary in header | Affects balance in direction |
---|---|---|---|
Debit | 1 | Debit summary (+) | - |
Credit | 2 | Credit summary (+) | + |
Debit reversal | 3 | Debit summary (-) | + |
Credit reversal | 4 | Credit summary (-) | - |
Formatting of fields
All
- date fields are formatted as ddMMyy,
- numeric fields representing money
- contain the first n-2 characters as the whole part,
- contain the last 2 characters are the decimal part,
- and the field is padded from the left with "0" characters,
- signs of money fields are either the character "+" or "-".
Exported files
In all cases when you export statements in ABO format, you will get a zip file which will contain a separate ABO file for every account that is included in the export. If there were no transactions for the given filters for an account, the file will only contain a header row and all money type fields (opening balance, closing balance, sum of credit, sum of debit) will be zeroed out with a positive sign.
ABO files have a ".gpc" extension and Barion creates UTF-8 encoded files.