AI-powered Invoice & Payment Tracker for SMEs using IBM watsonx Orchestrate - Automated invoice processing, payment reminders, and workflow orchestration.
Small and Medium Enterprises (SMEs) struggle with manual invoice tracking, payment follow-ups, and workflow management. This AI-powered agent built with IBM watsonx Orchestrate automates the entire invoice-to-payment lifecycle, saving time and reducing errors.
- Manual invoice processing wastes 15-20 hours per week for SMEs
- Late payment follow-ups lead to cash flow issues
- Tracking invoices across emails, cloud storage, and spreadsheets is chaotic
- No unified system for payment status visibility
An intelligent AI agent that:
- Extracts invoices from emails and cloud storage (Gmail, Google Drive)
- Processes invoice data using AI document parsing
- Updates tracking spreadsheet automatically
- Sends payment reminders via email and Slack/Teams
- Notifies teams when payments are received or overdue
- Provides dashboard for real-time payment status
┌─────────────────────┐
│ Email/Drive API │
│ (Invoice Sources) │
└──────────┬──────────┘
│
▼
┌─────────────────────────────────────┐
│ IBM watsonx Orchestrate Agent │
│ │
│ ┌──────────────────────────────┐ │
│ │ Document Processing Skills │ │
│ │ - Extract Invoice Data │ │
│ │ - Parse Vendor/Amount/Date │ │
│ └──────────────────────────────┘ │
│ │
│ ┌──────────────────────────────┐ │
│ │ Workflow Orchestration │ │
│ │ - Update Spreadsheet │ │
│ │ - Send Reminders │ │
│ │ - Notify Team │ │
│ └──────────────────────────────┘ │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ Integrations │
│ • Google Sheets (Tracking) │
│ • Gmail (Reminders) │
│ • Slack/Teams (Notifications) │
└─────────────────────────────────────┘
🔗 Live Demo: [Coming Soon]
📹 Video Presentation: [Coming Soon]
- IBM watsonx Orchestrate: Agent orchestration and workflow automation
- Python: Backend logic and API integration
- Flask/FastAPI: Web application framework
- Google APIs: Gmail, Drive, Sheets integration
- Slack/Teams API: Team notifications
- Streamlit: Dashboard UI
- Docker: Containerization
sme-invoice-payment-tracker/
├── agent/
│ ├── watsonx_orchestrate_config.yaml
│ ├── skills/
│ │ ├── invoice_extractor.py
│ │ ├── payment_reminder.py
│ │ └── notification_sender.py
│ └── workflows/
│ └── invoice_workflow.json
├── backend/
│ ├── app.py
│ ├── api/
│ │ ├── invoice_routes.py
│ │ └── payment_routes.py
│ └── services/
│ ├── gmail_service.py
│ ├── sheets_service.py
│ └── slack_service.py
├── frontend/
│ ├── dashboard.py
│ └── static/
├── data/
│ └── sample_invoices/
├── tests/
├── docs/
│ ├── SETUP.md
│ ├── API.md
│ └── ARCHITECTURE.md
├── requirements.txt
├── Dockerfile
├── docker-compose.yml
└── README.md
- Python 3.9+
- IBM watsonx Orchestrate account (30-day free trial)
- Google Cloud Project with Gmail, Drive, Sheets APIs enabled
- Slack/Teams webhook (optional)
-
Clone the repository
git clone https://github.com/mithilP007/sme-invoice-payment-tracker.git cd sme-invoice-payment-tracker -
Install dependencies
pip install -r requirements.txt
-
Set up environment variables
cp .env.example .env # Edit .env with your API keys -
Configure IBM watsonx Orchestrate
- Follow instructions in
docs/SETUP.md - Import agent configuration from
agent/watsonx_orchestrate_config.yaml
- Follow instructions in
-
Run the application
# Backend API python backend/app.py # Dashboard (separate terminal) streamlit run frontend/dashboard.py
✅ Automated Invoice Extraction
- Fetches invoices from Gmail attachments and Google Drive
- AI-powered document parsing to extract vendor, amount, invoice number, due date
✅ Smart Tracking
- Auto-updates Google Sheets with invoice details
- Tracks status: Pending, Paid, Overdue
- Calculates days until/past due date
✅ Payment Reminders
- Automated email reminders 7 days before due date
- Follow-up reminders on due date and 3 days after
- Customizable reminder templates
✅ Team Notifications
- Slack/Teams notifications for new invoices
- Alerts for overdue payments
- Payment confirmation notifications
✅ Dashboard
- Real-time payment status overview
- Charts and analytics
- Export reports
🔮 AI Insights
- Predicts payment likelihood based on vendor history
- Identifies payment pattern anomalies
🔄 Workflow Automation
- Multi-step approval workflows
- Integration with accounting software (QuickBooks, Xero)
- Freelancers & Consultants: Track client invoices and automate follow-ups
- Small Businesses: Manage vendor invoices and payment schedules
- Startups: Streamline accounts payable without dedicated finance team
- Service Companies: Monitor recurring subscription invoices
Run tests:
pytest tests/Test coverage:
pytest --cov=backend --cov=agent tests/This project was built for the Agentic AI Hackathon with IBM watsonx Orchestrate (November 2025).
Team: Mithil P
Event: Lablab.ai Hackathon
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
Mithil P
- GitHub: @mithilP007
- Email: [email protected]
- IBM watsonx Orchestrate team for the amazing AI agent platform
- Lablab.ai for organizing the hackathon
- Open source community for the tools and libraries
For questions or support:
- Open an issue on GitHub
- Contact: [email protected]
Built with ❤️ using IBM watsonx Orchestrate