b2c: BankToCustomer SEPA

This document describes the functionality implemented by the lino_xl.lib.b2c module.

This is a tested document. The following instructions are used for initialization:

>>> from lino import startup
>>> startup('lino_book.projects.min9.settings')
>>> from lino.api.doctest import *

See the specs of Lino Welfare for examples.


The plugin is inactive as long as import_statements_path is not set.

As a site manager you can set this e.g. by specifying in your settings.py:

def get_plugin_configs(self):
    yield super(Site, self).get_plugin_configs()
    yield ('b2c', 'import_statements_path', '/var/sepa_incoming')

Lino does not connect directly with the bank, but assumes that SEPA statement files are being downloaded to that directory.

and then to invoke the lino_xl.lib.b2c.models.ImportStatements action.

User interface

>>> ses = rt.login('robin')
>>> ses.show_menu_path(system.SiteConfig.import_b2c)
Accounting --> Import SEPA

Database models

class lino_xl.lib.b2c.Account

Django model used to represent an imported bank account.

class lino_xl.lib.b2c.Statement

Django model used to represent aa statement of an imported bank account.

class lino_xl.lib.b2c.Transaction

Django model used to represent a transaction of an imported bank account.

Views reference

class lino_xl.lib.b2c.Accounts
class lino_xl.lib.b2c.Statements
class lino_xl.lib.b2c.StatementsByAccount
class lino_xl.lib.b2c.TransactionsByStatement
class lino_xl.lib.b2c.ImportStatements