Inspiration

In a world of rising costs, everyone loves a good deal. We noticed that many online stores offer significant discounts for bulk purchases—but those deals are often out of reach for solo shoppers. That’s where SplitBuy comes in. We built a platform that lets people team up, pool their purchasing power, and unlock savings together. Our goal: make collective buying simple, transparent, and secure.

What it does

SplitBuy is a full-stack web app that facilitates group purchases. Here’s how it works:

  • Create a Listing: A user pastes a product URL with a group deal into SplitBuy. Our backend scrapes the product’s name, price, and image to generate a listing.
  • Form a Group: This listing becomes a live group-buy page. Others can discover the deal and request to join. The original user (the organizer) approves requests.
  • Coordinated Payment: Once the group is full, each participant pays their share through the platform. Funds are held until purchase is confirmed, reducing risk.
  • Purchase & Proof: The organizer is notified to place the order and upload a receipt or invoice as proof.
  • Confirmation: Members verify their item is included in the receipt. Once everyone confirms, the transaction is marked complete.
  • Ratings & Reviews: Participants rate and review the organizer. These ratings appear on the organizer’s public profile to build trust in the community.
  • Real-Time Chat: A built-in chat system allows participants to coordinate and communicate directly.

Key Features

  • AI-Based Deal Parsing: Our backend uses Groq’s GenAI API to extract deals (e.g., “Buy 3, get 50% off”) and key product data from e-commerce pages—handling messy, dynamic HTML better than traditional scrapers.
  • Pickup Radius Matching: Users can search for group buys within a geographic radius using geolocation and Mapbox, making local pickup coordination easy.
  • Trust Systems: Users are reviewed after each group buy, and future versions will introduce ID verification for further fraud prevention.
  • Fraud Prevention by Design: Because all payments are processed through us, we act as a trusted intermediary and can dispute or reverse charges if a party fails to follow through.
  • Delivery Tracking (Planned): A future enhancement will let users input tracking numbers. Once delivered, we can start a timer for item pickup and better detect potential fraud.

How we built it

SplitBuy is built with a modern, full-stack architecture focused on responsiveness, reliability, and ease of use.

  • Frontend: Built with Next.js (App Router) and React. All components use TypeScript for type safety and better DX.
  • Backend & Database: Firebase powers the backend. We use Firestore for real-time data syncing and Firebase Auth for secure login.
  • UI/UX: Styled with Tailwind CSS and built using Shadcn/UI for modern, responsive components.
  • APIs & Services:
    • A Groq-powered GenAI service parses listing info and promotional text from product URLs.
    • Mapbox API provides geolocation, address autocomplete, and pickup radius matching.

Challenges we ran into

  • GenAI-Powered Parsing via Groq: One of our biggest challenges was reliably extracting structured data from messy, dynamic e-commerce pages. We used Groq’s GenAI API to interpret promotional text and infer deal logic. Prompt tuning, fallback handling, and retry logic were essential.
  • Anonymizing Coordinates for Map-Based Filtering: Implementing geolocation features while preserving user privacy required us to anonymize exact coordinates. Balancing precise location filtering with privacy meant developing a system that masks user data but still enables accurate radius searches.
  • Real-Time State Sync: Managing real-time UI updates across users during group buy flows (payments, approvals, confirmations) required careful Firestore design.
  • Data Model Bugs: Early schema inconsistencies caused display issues like "Unknown User". We standardized models to ensure consistent frontend/backend behavior.
  • Payment Flow Refactor: Initially, we required manual proof uploads. We pivoted mid-project to simulate card-based payments, requiring API redesigns and UI rewrites.

Accomplishments we're proud of

  • End-to-End Workflow: A fully functional system from listing creation to organizer rating, all in a guided, secure flow.
  • Map Location Filtering: Implemented radius-based geolocation filtering to connect users for local pickup efficiently and privately.
  • Live Chat History: Built a real-time chat system that keeps conversation history, enabling seamless communication between group members.
  • Validation Flow: Developed a robust multi-step validation process including payment confirmation, proof of purchase uploads, and participant approvals to ensure transaction integrity.

What we learned

  • GenAI Parsing with Groq: Implementing generative AI for scraping e-commerce pages using Groq’s API revealed challenges around prompt engineering, handling diverse HTML structures, and ensuring consistent, reliable extraction of deal terms and product data. Iterative tuning and fallback logic were essential to handle edge cases and dynamic content.

  • Geolocation and Privacy: Integrating Mapbox APIs for address autocomplete, geocoding, and radius-based search taught us the importance of privacy-first design. We anonymize user coordinates to enable local matching without exposing exact locations, balancing functionality with user security.

  • Real-Time Synchronization: Leveraging Firestore’s real-time capabilities for multi-user state management was critical but complex. Coordinating payment statuses, proof uploads, and approvals in real time required careful data modeling and efficient client-server syncing to maintain UI consistency.

  • Simulated Payment Flow Complexity: Building a simulated payment process revealed the intricacies of transaction state management and the importance of designing APIs and frontend flows that can later integrate real payment processors like Stripe.

  • Building Trust Through Tech: Features like proof of purchase uploads, in-app chat, user reviews, and planned ID verification rely heavily on seamless backend and frontend integration to maintain data integrity and responsiveness — essential for user confidence.

  • Automated Delivery Tracking: Planning to incorporate tracking number submission and delivery status monitoring highlighted the technical challenge of integrating external logistics data to automate dispute detection and resolution workflows.

  • Scalable Schema Design: Designing Firestore schemas that accommodate real-time updates, nested group buy states, and user metadata was key to preventing bugs and enabling smooth feature expansion.

What's next for SplitBuy

  • Live Payments: Integrate Stripe for secure real-world transactions and refund/dispute handling.
  • ID Verification: Add government ID checks to further reduce fraud and enable higher-value transactions.
  • Geolocation Discovery: Improve location-aware search so users can find nearby group buys for local pickup.
  • Delivery Tracking: Let users submit tracking numbers and track deliveries. Trigger timers post-delivery to flag uncollected items or disputes.
  • Smart Notifications: Add in-app/email notifications for key events like full group buys, payment reminders, and delivery updates.
  • Sponsored Deals: Collaborate with companies to feature sponsored group-buy listings. This benefits everyone: companies boost sales, users save money, and SplitBuy earns a cut of the unlocked discount.
  • Package Pickup Coordination: Automatically release pickup information (time, location, contact details) to group members when it’s time to collect their orders, streamlining logistics and improving user experience.

Business potential

SplitBuy isn’t just a product—it’s a platform. By acting as the trusted middleman, we enable frictionless, low-risk group buying. In the future, we’ll partner with brands to promote exclusive, limited-time group discounts, generating revenue from a cut of the savings we help users unlock. This model aligns incentives across buyers, sellers, and the platform.

Built With

Share this project:

Updates