GSTGuard — See Beyond the Invoice
Inspiration
GST invoices play an important role in business transactions and tax compliance. However, identifying unusual transactions can be challenging for Micro, Small, and Medium Enterprises (MSMEs), especially when they have to review a large number of invoices manually.
We were inspired to explore how machine learning could help businesses identify unusual invoice patterns and decide which transactions need closer inspection. We also recognized that an invoice amount that is normal for one shop may be unusual for another.
This led us to build GSTGuard, a GST invoice anomaly detection and risk assessment system designed to analyze transaction details in the context of a shop's historical behaviour.
What It Does
GSTGuard aims to help users identify potentially unusual GST invoice transactions and prioritize them for verification.
Key features include:
- Invoice Upload: Upload an invoice image for analysis.
- Anomaly Risk Assessment: Identify transactions that deviate from expected patterns.
- Historical Behaviour Analysis: Compare invoice values with a shop's historical transaction patterns.
- Dashboard: View invoice summaries and risk categories.
- Invoice History: Review previously analyzed transactions.
- Verification Workflow: Highlight unusual invoices for further review instead of automatically declaring them fraudulent.
The goal is to provide a decision-support tool that makes invoice review more organized and context-aware.
How We Built It
We designed GSTGuard as a web application with a frontend, backend, and machine learning component.
Frontend: React is used to build the dashboard, invoice upload interface, risk results, and invoice history pages.
Backend: Python with Flask is planned to handle invoice analysis requests, validate transaction data, and communicate with the machine learning model.
Machine Learning: We selected Isolation Forest as the initial unsupervised anomaly detection algorithm. It can identify unusual patterns in transaction data without requiring every training invoice to be labelled as fraudulent.
Data Processing: The planned pipeline uses invoice amount, GST amount, item count, and historical transaction information to create features for anomaly detection.
Our intended workflow is:
- Upload an invoice and provide or extract its transaction details.
- Validate and preprocess the invoice data.
- Compare its characteristics with the relevant shop's historical behaviour.
- Pass the transaction features to the anomaly detection model.
- Display a risk assessment and recommend verification when necessary.
We are developing the application incrementally, starting with the user interface and then integrating the backend and machine learning components.
Challenges We Faced
One of our main challenges was designing a system that considers the context of individual businesses. Using a single transaction amount threshold would not work well for every shop because transaction sizes can vary considerably between businesses.
Another challenge was planning the integration of image uploads, transaction data extraction, backend processing, and machine learning into a single workflow.
We also encountered software dependency compatibility issues while setting up the React development environment. Resolving these issues helped us understand the importance of managing compatible package versions and testing each component before integration.
Since reliable labelled GST fraud datasets are difficult to obtain, we also had to consider how to demonstrate the prototype responsibly using synthetic transaction data without making unsupported claims about real-world fraud detection performance.
What We Learned
Through this project, we explored how unsupervised machine learning can be applied to financial transaction analysis and why historical context matters when assessing anomalies.
We also gained experience in planning a full-stack application, organizing frontend and backend responsibilities, managing code through GitHub, and designing a workflow that connects invoice data with machine learning predictions.
Most importantly, we learned that an anomaly is not proof of fraud. A useful system should highlight unusual transactions, explain why they deserve attention, and leave the final verification to a human reviewer.
What's Next
In the future, we aim to enhance GSTGuard with advanced capabilities to make invoice anomaly detection more accurate, intelligent, and reliable. Planned improvements include integrating OCR technology to automatically extract invoice details from uploaded images, strengthening shop-specific historical transaction profiling, and enhancing the machine learning model to identify more complex and subtle anomalies.
We also plan to incorporate secure data management, real-time risk notifications, and detailed explanations for flagged transactions. Further evaluation using diverse and realistic transaction datasets will help us assess the system's performance and reduce false positives.
Our long-term vision is to evolve GSTGuard into a scalable, context-aware solution that supports MSMEs in identifying unusual GST invoice transactions and making informed verification decisions.
GSTGuard — See Beyond the Invoice. Detect Anomalies. Protect Transactions.
Log in or sign up for Devpost to join the conversation.