B

BookIT

You Wont Miss a Coldplay Aur Cricket Ticket or get Rs.1000 ticket in Rs.20000!

B

BookIT

You Wont Miss a Coldplay Aur Cricket Ticket or get Rs.1000 ticket in Rs.20000!

The problem BookIT solves

Secure and Transparent Ticketing

Prevents fraud and scalping by verifying user identities (email, phone, Aadhaar) and maintaining an immutable record of ticket purchases on the blockchain.
Users can validate the authenticity of their tickets without relying on intermediaries.
User-Centric Profiles

Each user has a personal profile that tracks their attended events and ticket purchases, offering a personalized experience.
Makes it easier for event organizers to identify frequent attendees and offer targeted perks or loyalty rewards.
Efficient Event Management

Event organizers can manage ticket sales, track buyers, and maintain a waiting list for sold-out events automatically.
Supports various seat types, enabling event creators to offer flexible ticketing options.
Global Accessibility

Eliminates geographical and operational constraints by enabling anyone with an internet connection and wallet to participate in events.
Enhanced Accountability

Every transaction, from ticket purchases to profile updates, is logged and traceable, ensuring a high degree of accountability for both users and organizers.

Challenges we ran into

  1. Managing Identity Verification
    Challenge:
    Integrating email, phone, and Aadhaar verification into a decentralized system was tricky since Solidity doesn't allow direct access to external APIs for real-time verification.
    Solution:
    We opted for a hash-based approach, where the email, phone, and Aadhaar details are hashed and stored securely. This ensures uniqueness without exposing sensitive data, while external verification can be handled off-chain.
  2. Preventing Double Registrations
    Challenge:
    Ensuring that the same email, phone, or Aadhaar number couldn't be registered twice required meticulous checks across multiple mappings.
    Solution:
    We implemented usedEmails and usedPhones mappings to track already-registered identities and validated every new registration against these mappings. Additionally, the adharToWallet mapping ensured each Aadhaar number was linked to a single wallet.
  3. Dynamic Seat Type Handling
    Challenge:
    Adding support for seat types required creating flexible structures while keeping gas costs low. Handling string comparisons for seat type validation in Solidity (a language without native string comparison functions) added complexity.
    Solution:
    We used keccak256 hashing for string comparisons, ensuring reliable validation of seat types during ticket purchases. The seat types are stored in an array within the event structure, and hashing ensures efficient matching.
  4. Handling Waiting Lists
    Challenge:
    Managing a waiting list for sold-out events while ensuring fairness and gas efficiency was a significant hurdle.
    Solution:
    We designed the contract to dynamically add users to a waiting list when ticket demand exceeds availability. The waitingList array for each event maintains the order in which users attempted to purchase tickets, ensuring fairness.

Tracks Applied (2)

Consumer Track

Our Ticketing System perfectly aligns with the Base: Consumer Track by addressing real-world consumer challenges in the ...Read More

Base

Build on Okto

Empowering Users with Ownership We’ve designed the system to give users complete control over their data. By using block...Read More

okto

Technologies used

Discussion