About the Project – IntentGuard

Inspiration

Online shopping makes purchasing products easy, but sometimes users may buy products that do not match their actual needs, exceed their budget, or include unwanted features. We wanted to create a solution that gives users more control before making an online payment. This inspired us to build IntentGuard, a purchase guardian that checks whether a product matches the user's shopping purpose, budget, and preferences before allowing payment.

What We Learned

While developing IntentGuard, we learned how to connect a frontend application with a Python backend, manage user information using a database, and integrate PayPal Sandbox for payment processing. We also gained practical experience in validating purchase details, handling API requests, and building a complete shopping-to-payment workflow.

Most importantly, we learned that a payment system should do more than process transactions. It should also help users make informed purchasing decisions.

How We Built It

We developed IntentGuard using HTML, CSS, and JavaScript for the frontend, Python Flask for the backend, and SQLite for database management. The application follows a simple workflow:

  1. User Authentication: Users can create an account and log in.
  2. Shopping Intent: Users enter their product requirements, purpose, budget, and preferences.
  3. Product Verification: The system checks whether the selected product matches the user's requirements.
  4. Purchase Approval: Users review the purchase details and provide explicit approval before proceeding.
  5. PayPal Payment: After approval, the application connects to PayPal Sandbox to process the test payment.
  6. Receipt: Users can view their payment result after the transaction.

Challenges We Faced

One of our main challenges was connecting the frontend, backend, database, and PayPal Sandbox into a single working application. We also faced issues with database locking, API communication, and maintaining the correct purchase details throughout the payment process. We worked through these challenges by testing each stage, debugging errors, and improving the connection between the different components.

Final Thoughts

IntentGuard is built around one simple idea: users should have control over what they approve and pay for. Our goal is to make online purchases more intentional by checking the user's requirements and asking for clear approval before payment.

Share this project:

Updates

Submission history