Payment Routing
From GnuCash
Thoughts about the relations of IBAN, BIC, routing number, account number and online banking; their best storing place, …
Contents
Classes of Bank Transfers
Intra Bank
- Example
- Move money from your checking account to your saving account.
- Required
- Account number
Traditional Domestic
- Example
- Pay your domestic supplier
- Required
- Account number, National bank code aka (domestic) routing number
- Optional
- Name and branch of target bank
International by SWIFT
- Example
- Pay your overseas supplier
- Required
- Account number, BIC
- Optional
- Name and branch of target bank
SEPA
- Example
- required for paying inside the EURO zone
- Required
- IBAN
- IBAN Structure
- country code using ISO 3166-1 alpha-2 – two letters,
- check digits – two digits, and
- Basic Bank Account Number (BBAN) – up to 30 alphanumeric characters that are country-specific.
- Note
- The national bank code and account number are usually part of the BBAN.
IBAN Area
- Example
- more countries are adapting the IBAN from EEA to Timor-Leste.
- Required
- IBAN + BIC
- Note
- After SWIFT recognized the mapping between IBAN and BIC, BIC is no longer required.
GnuCash
At least in invoices it is common, to print the Payment Routing in the footer
- Textual
- as part of a QR code.
Instead of beeing hidden in report options as part of the Payable to string it should become part of the book options below Company Name At least in DE many organizations have more than one bank connection. Background the money was usually travelling a few days, when the transfer crossed the border between the main branches municipal, cooperative and private banks. So I would suggest to have a list of banks with variable records:
- Bank name (and optionally branch) as human readable form
- IBAN
- if IBAN is not set the following are required. Else they are informative or obsolete:
- account number
- national bank code
- BIC (optionally, required in some cases)
Online Banking
In some cases some infos like IBAN/account number are also set, when the user sets up online banking.
- HBCI
-
<slot> <slot:key>hbci</slot:key> <slot:value type="frame"> <slot> <slot:key>account-id</slot:key> <slot:value type="string">1234567890</slot:value> </slot> <slot> <slot:key>account-uid</slot:key> <slot:value type="integer">9</slot:value> </slot> <slot> <slot:key>bank-code</slot:key> <slot:value type="string">121107882</slot:value> </slot> <slot> <slot:key>trans-retrieval</slot:key> <slot:value type="timespec"> <ts:date>2017-08-27 09:33:08 -0700</ts:date> </slot:value> </slot> </slot:value> </slot>
- EBICS
- TBD
- OFX
- TBD
Can we reuse the infos?