Payment Routing

From GnuCash
Jump to: navigation, search

Thoughts about the relations of IBAN, BIC, routing number, account number and online banking; their best storing place, …

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
  1. country code using ISO 3166-1 alpha-2 – two letters,
  2. check digits – two digits, and
  3. 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

  1. Textual
  2. as part of a QR code.

Instead of beeing hidden in report options as part of the Payable to string Invoice Option Display.png 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:

  1. Bank name (and optionally branch) as human readable form
  2. IBAN
    if IBAN is not set the following are required. Else they are informative or obsolete:
    1. account number
    2. national bank code
  3. 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?