LIBEUFIN-NEXUS(1)

NAME
libeufin-nexus - service to interface to various bank access APIs

SYNOPSIS

libeufin-nexus [-h | --help] [--version] COMMAND [ARGS...]

Subcommands: dbinit, ebics-setup, ebics-submit, ebics-fetch, serve, initiate-payment, manual, list, config

DESCRIPTION

libeufin-nexus is a program that provides a service to interface to various bank access APIs

Its options are as follows:

-h | --help
    Print short help on options.

–version
    Print version information.

    The interaction model is as follows:

•   Configure the database with commands dbinit.

•   Setup EBICS access with commands ebics-setup. Setting the access means to share the client keys with the bank and downloading the bank keys

•   After a successful setup, the subcommands ebics-submit and ebics-fetch can be run to respectively send payments and download the bank account history.

•   Start the HTTP server with command serve. Let this run in a shell, writing logs to stderr.

    The following sections describe each command in detail.

  dbinit

This command defines the database schema for LibEuFin Nexus. It is mandatory to run this command before invoking the ebics-setup or serve commands.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-r | --reset
    Reset database (DANGEROUS: All existing data is lost)

-h | --help
    Print short help on options.

  ebics-setup

This command creates the client keys, if they aren't found already on the disk, and sends them to the bank if they were not sent yet. In case of sending, it ejects the PDF document that contains the keys fingerprints, so that the user can send it to the bank to confirm their keys. The process continues by checking if the bank keys exist already on disk, and proceeds with downloading them in case they are not. It checks then if the bank keys were accepted by the user; if yes, the setup terminates, otherwise it interactively asks the user to mark the keys as accepted. By accepting the bank keys, the setup terminates successfully.

It is mandatory to run this command before invoking the ebics-fetch or ebics-submit commands.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--force-keys-resubmission
    Resubmits all the keys to the bank.

--auto-accept-keys
    Accepts the bank keys without interactively asking the user.

--generate-registration-pdf
    Generates the PDF with the client keys fingerprints, if the keys have the submitted state. That's useful in case the PDF went lost after the first submission and the user needs a new PDF.

--debug-ebics
    Log EBICS transactions steps and payload at log_dir.

-h | --help
    Print short help on options.

  ebics-submit

This subcommand submits EBICS files to the bank. It submits pending outgoing payments. Outgoing payment status is fetched by ebics-fetch.

Submits are executed at 'FREQUENCY'.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--transient
    Execute once and return, ignoring the 'FREQUENCY' configuration value.

--debug-ebics log_dir
    Log EBICS transactions steps and payload at log_dir.

-h | --help
    Print short help on options.

  ebics-fetch

This subcommand fetches EBICS files from the bank. Incoming payments are recorded and the status of outgoing payments is updated.

If ACCOUNT_TYPE is exchange, incoming payments with an invalid Taler subject are bounced. Bounces are submitted by ebics-submit.

Fetches of new documents are executed at 'FREQUENCY' or any time a real-time EBICS notification is received. Every day, a checkpoint is performed, during which all documents since the last checkpoint are fetched.

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--transient
    Execute once and return, ignoring the 'FREQUENCY' configuration value.

--pinned-start YYYY-MM-DD
    Only supported in --transient mode, this option lets specify the earliest timestamp of the downloaded documents.

--peek
    Only supported in --transient mode, do not consume fetched documents.

--checkpoint
    Only supported in --transient mode, run a checkpoint.

--debug-ebics log_dir
    Log EBICS transactions steps and payload at log_dir.

-h | --help
    Print short help on options.

  serve

This command starts the HTTP server.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--check
    Check whether an API is in use (if it's useful to start the HTTP server). Exit with 0 if at least one API is enabled, otherwise 1.

-h | --help
    Print short help on options.

  initiate-payment

This subcommand initiates an outgoing payment. The pending payment is stored in the database and will be performed the next time ebics-submit run.

It takes one argument, the creditor IBAN payto URI, which must contain a 'receiver-name' and may contain an 'amount' and a 'message' if they have not been defined using CLI options.

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--amount AMOUNT
    The amount to transfer, payto 'amount' parameter takes the precedence

--subject TEXT
    The payment subject, payto 'message' parameter takes the precedence

--request-uid TEXT
    The payment request UID, will be randomly generated if missing.

-h | --help
    Print short help on options.

  manual

Manual management commands.

Its options are as follows:

-h | --help
    Print short help on options.

    Subcommands: export, import, status, ack

  manual export

Export pending batches as pain001 messages.

It takes one argument, the path where to write the zip export.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  manual import

Import EBICS camt files.

It takes multiple arguments, the paths to XML files to import.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  manual status

Change batches or transactions status.

It takes four arguments: the element kind, the element id, the new status and an optional status message.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  manual ack

Manually acknowledge the outgoing transaction for submission.

It takes many transactions as arguments.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  list

List nexus transactions.

Its options are as follows:

-h | --help
    Print short help on options.

    Subcommands: incoming, outgoing, initiated

  list incoming

List incoming transactions.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--incomplete
    Only list transactions that are incomplete

-h | --help
    Print short help on options.

  list outgoing

List outgoing transactions.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  list initiated

List initiated transactions.

Its options are as follows:

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

--ack | --awaiting-ack
    Only list transactions awaiting manual acknowledgement.

-h | --help
    Print short help on options.

  config

This command inspect or change the configuration.

-h | --help
    Print short help on options.

    Subcommands: get, dump, pathsub

  config get

This command lookup config value.

It takes two arguments, the section name and the option name

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-f | --filename
    Interpret value as path with dollar-expansion.

-h | --help
    Print short help on options.

  config dump

This command dump the configuration.

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

  config pathsub

This command substitute variables in a path.

It takes one argument, a path expression.

-c | --config config_file
    Specifies the configuration file.

-L | --log LOGLEVEL
    Configure logging to use LOGLEVEL.

-h | --help
    Print short help on options.

SEE ALSO

libeufin-nexus.conf(5)

BUGS

Report bugs by using https://bugs.taler.net or by sending electronic mail to <taler@gnu.org>.

AUTHOR
GNU Taler contributors

COPYRIGHT
2014-2025 Taler Systems SA (GPLv3+ or GFDL 1.3+)