WOOB-BILL(1)

NAME
woob-bill - get/download documents and bills

SYNOPSIS
woob bill [-dqv] [-b backends] [-cnfs] [command [arguments..]]
woob bill [--help] [--version]

DESCRIPTION

Console application allowing to get/download documents and bills.

  Supported websites:
* amazon (Amazon)
* ameli (le site de l'Assurance Maladie en ligne)
* amelipro (Ameli website: French Health Insurance for Professionals)
* april (Pour les domaines d'assurance à titre individuel suivants (uniquement): Santé, de prêt, Prévoyance, Indépendance, Santé chien chat.)
* axabanque (AXA Banque)
* barclays (Milleis)
* becm (Banque Européenne Crédit Mutuel)
* bnp (BNP Paribas)
* bnppere (BNP Épargne Salariale)
* boursorama (Boursorama)
* bouygues (Bouygues Télécom)
* bp (La Banque Postale)
* btpbanque (BTP Banque)
* caissedepargne (Caisse d'Épargne)
* capeasi (AXA Épargne Salariale)
* ccf (CCF (ex HSBC France) est une banque de détail française créée en 1917, rachetée en 2000 par HSBC, puis par My Money Group (ex GE Money Bank France) en 2024.)
* cesu (Le Cesu est une offre simplifiée pour déclarer facilement la rémunération de votre salarié à domicile pour des activités de service à la personne.)
* cic (CIC)
* cityscoot (Le scooter électrique en libre-service, sans bornes.)
* cragr (Crédit Agricole)
* creditcooperatif (Crédit Coopératif)
* creditdunordpee (Crédit du Nord Épargne Salariale)
* creditmutuel (Crédit Mutuel)
* deliveroo (Deliveroo)
* edfparticulier (edf particulier)
* edfprofessionnel (EDF Professionnel)
* ekwateur (ekwateur website)
* enercoop (Enercoop)
* ensap (ENSAP)
* erehsbc (HSBC Épargne Salariale)
* esalia (Société Générale Épargne Salariale)
* espacecitoyens (Espace Citoyens)
* federalfinancees (Federal Finance Épargne Salariale)
* franceconnect (France Connect website)
* free (free website)
* freemobile (Free Mobile website)
* hellobank (Hello bank (BNP Paribas))
* impotsgouvfrpar (Impots - Avis et declarations - particulier)
* infomaniak (Infomaniak)
* ing (ING France)
* ladresse (L'Adresse)
* lampiris (French electricity provider Lampiris.fr)
* lcl (LCL)
* ldlc (ldlc website)
* lucca (Lucca)
* materielnet (Materiel.net)
* milleis (Milleis)
* myfoncia (Foncia billing capabilities)
* nrjmobile (NRJ Mobile)
* onlinenet (Online.net)
* orange (Orange French mobile phone provider)
* ovh (Ovh)
* pajemploi (Pajemploi est une offre de service du réseau des Urssaf, destinée à simplifier les formalités administratives pour les parents employeurs qui font garder leur(s) enfant(s) par une assistante maternelle agréée ou une garde d’enfants à domicile.)
* payfit (payfit)
* poivy (Poivy website)
* primonialreim (Primonial REIM)
* s2e (Épargne Salariale)
* societegenerale (Société Générale)
* sohappy (sohappy website)
* ticketscesu (Tickets CESU Edenred)
* trainline (trainline)

BILL COMMANDS

balance [ID]
    Get balance of subscriptions.
    If no ID given, display balance of all backends.

bills [ID]
    Get the list of bills documents for subscriptions.
    If no ID given, display bills of all backends
    Default is limited to 10 results.

debug
    Launch a debug Python shell

details [ID]
    Get details of subscriptions.
    If no ID given, display all details of all backends.

documents [ID]
    Get the list of documents for subscriptions.
    If no ID given, display documents of all backends
    Default is limited to 10 results.

download [DOC_ID | all] [FILENAME]
    download DOC_ID [FILENAME]
    download the document
    DOC_ID is the identifier of the document (hint: try documents command)
    FILENAME is where to write the file. If FILENAME is '-',
    the file is written to stdout.
    download all [SUB_ID]
    You can use special word "all" and download all documents of
    subscription identified by SUB_ID.
    If SUB_ID is not given, download documents of all subscriptions.

download_pdf [id | all]
    download function with forced PDF conversion.

history [ID]
    Get the history of subscriptions.
    If no ID given, display histories of all backends.
    Default is limited to 10 results.

profile
    Display detailed information about person or company.

subscriptions
    List all subscriptions.

WOOB COMMANDS

backends [ACTION] [BACKEND_NAME]...
    Select used backends.
    ACTION is one of the following (default: list):
    * enable enable given backends
    * disable disable given backends
    * only enable given backends and disable the others
    * list list backends
    * add add a backend
    * register register a new account on a website
    * edit edit a backend
    * remove remove a backend
    * list-modules list modules

cd [PATH]
    Follow a path.
    ".." is a special case and goes up one directory.
    "" is a special case and goes home.

condition [EXPRESSION | off]
    If an argument is given, set the condition expression used to filter the results. See CONDITION section for more details and the expression.
    If the "off" value is given, conditional filtering is disabled.
    If no argument is given, print the current condition expression.

count [NUMBER | off]
    If an argument is given, set the maximum number of results fetched.
    NUMBER must be at least 1.
    "off" value disables counting, and allows infinite searches.
    If no argument is given, print the current count value.

formatter [list | FORMATTER [COMMAND] | option OPTION_NAME [on | off]]
    If a FORMATTER is given, set the formatter to use.
    You can add a COMMAND to apply the formatter change only to
    a given command.
    If the argument is "list", print the available formatters.
    If the argument is "option", set the formatter options.
    Valid options are: header, keys.
    If on/off value is given, set the value of the option.
    If not, print the current value for the option.
    If no argument is given, print the current formatter.

logging [LEVEL]
    Set logging level.
    Availables: debug, info, warning, error.
    * quiet is an alias for error
    * default is an alias for warning

ls [-d] [-U] [PATH]
    List objects in current path.
    If an argument is given, list the specified path.
    Use -U option to not sort results. It allows you to use a "fast path" to
    return results as soon as possible.
    Use -d option to display information about a collection (and to not
    display the content of it). It has the same behavior than the well
    known UNIX "ls" command.
    Default is limited to 40 results.

quit
    Quit the application.

select [FIELD_NAME]... | "$direct" | "$full"
    If an argument is given, set the selected fields.
    $direct selects all fields loaded in one http request.
    $full selects all fields using as much http requests as necessary.
    If no argument is given, print the currently selected fields.

storage [ACTION] [BACKEND_NAME]
    Manipulation of a backend storage.
    * cat display content of the storage
    * edit edit the storage
    * flush flush storage

OPTIONS

--version
    show program's version number and exit

-h, --help
    show this help message and exit

-b BACKENDS, --backends=BACKENDS
    what backend(s) to enable (comma separated)

-e EXCLUDE_BACKENDS, --exclude-backends=EXCLUDE_BACKENDS
    what backend(s) to exclude (comma separated)

-I, --insecure
    do not validate SSL

--nss
    Use NSS instead of OpenSSL

--force-ipv4
    Force IPv4

--force-ipv6
    Force IPv6

--auto-update
    Automatically check for updates when a bug in a module is encountered

LOGGING OPTIONS

-d, --debug
    display debug messages. Set up it twice to more verbosity

-q, --quiet
    display only error messages

-v, --verbose
    display info messages

--logging-file=LOGGING_FILE
    file to save logs

-a, --save-responses
    save every response

--export-session
    log browser session cookies after login

RESULTS OPTIONS

-c CONDITION, --condition=CONDITION
    filter result items to display given a boolean expression. See CONDITION section for the syntax

-n COUNT, --count=COUNT
    limit number of results (from each backends)

-s SELECT, --select=SELECT
    select result item keys to display (comma separated)

FORMATTING OPTIONS

-f FORMATTER, --formatter=FORMATTER
    select output formatter (csv, htmltable, json, json_line, multiline, simple, subscriptions, table)

--no-header
    do not display header

--no-keys
    do not display item keys

-O OUTFILE, --outfile=OUTFILE
    file to export result

CONDITION
The -c and --condition is a flexible way to filter and get only interesting results. It supports conditions on numerical values, dates, durations and strings. Dates are given in YYYY-MM-DD or YYYY-MM-DD HH:MM format. Durations look like XhYmZs where X, Y and Z are integers. Any of them may be omitted. For instance, YmZs, XhZs or Ym are accepted. The syntax of one expression is "field operator value". The field to test is always the left member of the expression.

The field is a member of the objects returned by the command. For example, a bank account has "balance", "coming" or "label" fields.

  The following operators are supported:

=   Test if object.field is equal to the value.

!=  Test if object.field is not equal to the value.

>   Test if object.field is greater than the value. If object.field is date, return true if value is before that object.field.

<   Test if object.field is less than the value. If object.field is date, return true if value is after that object.field.

|   This operator is available only for string fields. It works like the Unix standard grep command, and returns True if the pattern specified in the value is in object.field.

  Expression combination

You can make a expression combinations with the keywords " AND ", " OR " an " LIMIT ".

The LIMIT keyword can be used to limit the number of items upon which running the expression. LIMIT can only be placed at the end of the expression followed by the number of elements you want.

  Examples:
woob bank ls --condition 'label=Livret A'
Display only the "Livret A" account.

woob bank ls --condition 'balance>10000'
Display accounts with a lot of money.

woob bank history account@backend --condition 'label|rewe'
Get transactions containing "rewe".

woob bank history account@backend --condition 'date>2013-12-01 AND date<2013-12-09'
Get transactions betweens the 2th December and 8th December 2013.

woob bank history account@backend --condition 'date>2013-12-01 LIMIT 10'
Get transactions after the 2th December in the last 10 transactions

COPYRIGHT
Copyright(C) 2012-2024 Florent Fourcot

For full copyright information see the COPYING file in the woob package.

FILES
"~/.config/woob/backends"

SEE ALSO
Home page: https://woob.tech/applications/bill