I developed this application to solve a specific bottleneck in a logistics company's billing cycle. It automates the distribution of weekly driver statements by mapping PDF files to a local database and sending them via the Gmail API using secure OAuth2 authentication.
To use this application, you must set up a project in the Google Cloud Console:
- Create a project named
StatementSenderat Google Cloud Console. - Enable the Gmail API.
- Configure the OAuth Consent Screen (Internal/Desktop app).
- Create an OAuth 2.0 Client ID and download the
credentials.json. - Place
credentials.jsoninto theToken/folder of this project.
Python, SQLAlchemy (SQL), Gmail API (OAuth2), and CustomTkinter.
- Install dependencies:
pip install -r requirements.txt - Add your driver PDFs to
Data/Statements/formatted like "[unit number] Statement". - Launch the app:
python GUI.py. - Use the "Email" tab to link Unit Numbers to Email Addresses.
- Click "Login" to authorize via your browser, then "Send" to distribute statements.