CSV file format

HomeBank User manual

# File CSV format

With HomeBank you can import/export some of the internal data in the most common file format that is CSV.

Notice: meanwhile CSV should uses comma as separator, HomeBank uses semi-colon as separator (this is most common than comma)

The format used for the different files is specific to HomeBank, so don't expect to import files your bank should offers you directly, you will need to arrange it a little in a spreadsheet like Gnumeric before.

Below is a description with example of the CSV format that HomeBank uses.

## Transaction import CSV format

date | the date format can be: y-m-d m-d-y d-m-y year can be 2 or 4 digits separators can be / . or -
payment | 0 = none 1 = credit card 2 = check 3 = cash 4 = bank transfer not allowed because CSV do not support multiple accounts => will be imported as 4 = bank transfer 5 = internal transfer 6 = debit card 7 = standing order 8 = electronic payment 9 = deposit 10 = financial institution fee 11 = direct debit Please read the lexicon for description of each payment
number | a string
payee | a payee name
memo | a string
amount | a number with a '.' or ',' as decimal separator, ex: -24.12 or 36,75
category | a full category name (category, or category:subcategory)
tags | tags separated by space

Starting
v5.2.5 : you can change the separator for transaction import into preferences.
v5.1.8 : bugfix: import of payment '5=internal transfer' will be imported as '4=bank transfer'
v4.5 : tag column is mandatory

Example:

          15-02-04;0;;;Some cash;-40,00;Bill:Withdrawal of cash;tag1 tag2
          15-02-04;1;;;Internet DSL;-45,00;Inline service/Internet;tag2 my-tag3
          ...

## Transaction export CSV format

The format exported is by default the same as for the import (described above).
But depending if you export from All transaction or choose some options, it can have more columns:

from All transaction | a first column is added and named: 'account'
option: Add Status column | a 'c' column after the amount, and before category column
option: Detail split lines | transaction with split are exported as extra lines with every split details

c | is the status of the transaction: R = Reconciled C = Cleared

Starting
v5.4.3 : you can optionally export every split line
v5.4 : the c column was added to the export

Example:

          15-02-04;0;;;Some cash;-40,00;R;Bill:Withdrawal of cash;tag1 tag2
          15-02-04;1;;;Internet DSL;-45,00;C;Inline service/Internet;tag2 my-tag3
          ...

↑ Back to Top

## Budget CSV format

level | 1 = category 2 = subcategory
| type | * = monthly blank = month value
category | if < 5.4 the category name if >= 5.4 the FULL category name
value(s) | 1 amount : if the type is monthly 12 amounts, separated by ';' : if type month value

Example:

    1;*;Fuel;45.00
    2; ;Domestic animals;1.00;2.00;3.00;4.00;...
    1:*;Food;17.00
    2:*;Phone:Bill;25.00
    2:*;Water:Bill;50.00
    ...

↑ Back to Top

## Category CSV format

level | 1 = category 2 = subcategory
type | - = expense + = income
category name | the category name

Example:

    1;-;Food
    2; ;Grocer
    2; ;Restaurant
    1;+;Wage
    ...

↑ Back to Top

## Payee CSV format

payee name | the name of the payee
full category name | optional: since 5.1.3 the full name of the category
notes | the notes of the payee (only at export)

Example:

    payee_name1;cat1:subcat1;"notes"
    payee_name2;;"notes"
    ...

↑ Back to Top

## Tag CSV format

tag name | the name of the tag

Example:

    tag_name1
    tag_name2
    ...

↑ Back to Top