Thousand separator in OFX import

Asked by Edouard PELLERIN on 2019-07-26

Hello,

I'm having an issue when importing an OFX file that has a space character as the thousand separator.
For example, a transaction of 1015.54 euros is written as "1 015,54" and homebank reads it as 1.00€. The decimal separator is correctly interpreted for every other transaction (below 1000) so I guess the space character as the thousand separator is what is causing the issue here.
I searched in the documentation and preferences and did not found a way to indicate the separator for thousands.

Any ideas ?

Thank you
Edouard

Question information

Language:
English Edit question
Status:
Solved
For:
HomeBank Edit question
Assignee:
No assignee Edit question
Solved by:
Edouard PELLERIN
Solved:
2019-07-27
Last query:
2019-07-27
Last reply:
2019-07-27
Maxime DOYEN (mdoyen) said : #1

HomeBank utilise libofx, qui suit les spécifications, votre banque génère des fichiers invalides :)
= Amounts should not include any punctuation separating thousands, millions, and so forth.
adressez vous a votre banque ou vous serez forcé de retoucher tous vos fichiers.

extrait complet des specifications OFX:

3.2.9 Amounts, Prices, and Quantities
3.2.9.1 Basic Format
Format: A-32
This section describes the format of numerical values used for amounts, prices, and quantities. In all cases,
a numerical value that does not contain a decimal point has an implied decimal point at the end of the
value. For example, a numerical value of “550” is equivalent to “550.” Trailing and leading spaces should
be stripped. Number format uses a leading sign. Negative number format uses a minus sign (-). Positive
number format uses a plus sign (+). The plus sign is implied for all amounts and can be omitted.
The following types are defined to have a maximum of 32 characters, including alphabetic characters,
digits and punctuation. However, clients and servers may have specific limits for the maximum number of
digits to the left or right of a decimal point. If a server cannot support a client request due to the size or
precision of a number, the server should return status code 2012.
Amount: Amounts that do not represent whole numbers (for example, 540.32), must include a decimal
point or comma to indicate the start of the fractional amount. Amounts should not include any punctuation
separating thousands, millions, and so forth. The maximum value accepted depends on the client.
Quantity: Use decimal notation.
Unitprice: Use decimal notation. Unless specifically noted, prices should always be positive.
Rate: Use decimal notation, with the rate specified out of 100%. For example, 5.2 is 5.2%. Rates can be
greater than 100 and can be negative.
Some services define special values, such as INFLATION, which you can use instead of a designated
value. Open Financial Exchange refers to these as “smart types,” and identifies them in the specification.

Edouard PELLERIN (edouardp) said : #2

Bonjour Maxime,

Merci pour ce retour, je ne m'étais pas plongé dans la spécification... Je vais les contacter pour leur préciser, mais j'ai peu d'espoir d'avoir une correction :)