semvec/pypi-packages huggingface dataset:
pdf-bank-statement-parser 0.1.1
Command-line tool for converting PDF bank statements into CSV
Requires Python: >=3.12

# PDF Bank Statement Parser

[![Downloads](https://static.pepy.tech/badge/pdf-bank-statement-parser)](https://pepy.tech/project/pdf-bank-statement-parser)

Command-line tool for robustly converting PDF bank statements into clean usable CSV. Currently only works for statements from First National Bank (FNB) South Africa (please let me know if you want me to expand the scope).

## Install

```bash
pip install pdf-bank-statement-parser
```

## Example Usage

```shell
# parse a single PDF bank statement #
parse-bank-statement-pdf \
  --input_filepath 'bank_statements/2024_03_27 - 2024_06_28.pdf' \
  --output_path 'bank_statements/csv/2024_03_27 - 2024_06_28.csv'

# parse all PDF bank statements in a given directory #
parse-bank-statement-pdf \
  --input_dir 'bank_statements/' \
  --output_path 'bank_statements/csv/' \
  --csv_sep_char ';'
```

The only format available from FNB for downloading historical bank statements is PDF, which is a useless format for any kind of downstream data task other than reading.

This tool uses [pypdfium2](https://github.com/pypdfium2-team/pypdfium2) for text extraction from PDF and native python for everything else. Transactions are extracted using RegEx.

The parsed results are verified as follows:

1. It is checked (for every transaction extracted) that the balance amount is the sum of the previous balance and the transaction amount.

2. It is checked that the opening balance reported on the statement plus the sum of extracted transactions is equal to the closing balance reported on the statement.
restack_integrations_composio 0.0.3
Composio integration for Restack AI
Requires Python: <3.13,>=3.10

### Composio Restack AI integration

This integration can be used in your project to interact with Composio.
Currently you get 4 functions exposed for your usage.

1. create_calendar_event. This function can be used as an example on how to interact with toolhouse. It will create an event on the google calendar of the connected account in the entity provided.
2. get_entity. This function will return the entity based on the entity_id provided
3. get_expected_params_for_user. This function returns the parameters needed for a user to initiate a connection. This is helpful in cases like shopify connection where user needs to provide tokens. Use this function to get list of fields and then you can decide how you want to fetch this from the end user.
4. initiate_connection. This function will initiate a connection to the provided app. In case a connection is on initiated state the connection object will be returned in which it contains the redirect url the user needs to visit in order to complete auth flow. For example for google calendar user needs to linked their google account in order for the composio tool to be able to create an event on the calendar.
5. is_entity_connected. Will help you determine if the entity is already connected to an application.

### Notes

Make sure to create an account in composio and on your project set the COMPOSIO_API_KEY as an environment variable.