5

The CODA specification refers to alphanumeric, but I cannot find where is the set of allowed characters defined.

Inspecting sample CODA files, emitted by reliable Belgian banks, I can see letters, numbers, parenthesis, dash, dot, colon, slash, space

What else is a valid alphanum?

arhak
  • 2,488
  • 1
  • 24
  • 38
  • My experiences from telecom payment integrations suggests that there is no such definition or even if there is, it's not strictly followed. Each provider of records can use what ever is their definition of alphanumeric, each consumer of records then has to filter, convert, strip or adapt characters their system can not process. – Teemu Ikonen Oct 14 '17 at 12:54
  • AFAIK, as as pointed by @TeemuIkonen, there's no defined set of characters. Take a look at this project, for example, which uses `windows-1252`: https://github.com/odoo/odoo/blob/8.0/addons/l10n_be_coda/wizard/account_coda_import.py. Also, keep in mind that there's already version 2.5 (you are using version 2.3): https://www.febelfin.be/sites/default/files/files/standard-coda-2.5-en.pdf – MiguelKVidal Oct 14 '17 at 22:11
  • @MiguelKVidal actually my link is to "Version 2.5.a - Update January 2016" at https://www.febelfin.be/sites/default/files/files/standard-coda-2.5a-en.pdf and Odoo doesn't seem to adhere much to the spec (for instance, regarding the different account structure types they support) thus it doesn't seem like an authority on the subject, but thanks for pointing it out anyway – arhak Oct 15 '17 at 14:18
  • 1
    @arhak sorry, my mistake! Anyway, mine is version 2.5.b from July 2017... You are right, Odoo isn't an authority on this subject... There're more (maybe 2 or 3) implementations on the net... I hope any of those Can help you. I cited Odoo's one because it has a specific character set, something in the lines you were searching for. – MiguelKVidal Oct 15 '17 at 17:41
  • thanks @MiguelKVidal – arhak Oct 16 '17 at 08:56
  • thanks @TeemuIkonen – arhak Oct 16 '17 at 08:58

1 Answers1

1

The CODA specification doesn't define what is accepted in the alphanumeric set.

There are some implementations on the net that uses specific characters set to interpret the input, like Odoo's one which uses windows-1252.
For reference, there's also pycoda and decodar.

As pointed out in this answer, SWIFT is the de facto standard for all international transactions and there's several implementations that you can use.

If we assume a bank would use the same character set for both local and international transactions, you could use SWIFT character set for this.

This is the official manual, which states the following character set:

a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9
/ - ? : ( ) . , ' +
CrLf Space

(4.1 SWIFT Character Set (X Character Set) - Page 20)

There is a post named Simple Guide to the SWIFT MT101 Format which may help you.

MiguelKVidal
  • 1,498
  • 1
  • 15
  • 23
  • a bounty of 100 just expired yesterday (palmface) ... I see, you replied 3 hours before it expired, but I wasn't around.. sorry for that, it went away – arhak Oct 17 '17 at 11:03
  • No problem at all. I hope this answer helps you and everyone else who needs this info. – MiguelKVidal Oct 17 '17 at 13:14