
Trutix P2P
Trustless P2P Ticket Trading
Demo
About
The problem it solves Every day in Latin America, thousands of people buy and sell tickets through WhatsApp and Facebook groups. Even though ticketing platforms allow transferring tickets to friends, they don’t provide a secure way to resell tickets to strangers. Existing resale platforms are often unavailable in the region, charge high fees (sometimes over 30%), and withhold payment until after the event. Because of that, people go back to informal channels — exposing themselves to scams, fake tickets, and the constant risk of sending money or a ticket to someone they don’t know. I’ve personally faced these problems over the past few years while building a traditional ticketing platform. I experienced fraud, chargebacks, and lack of trust infrastructure firsthand. That’s what led me to build Trutix P2P. Trutix allows two strangers to trade event tickets using USDC on Base, with funds held in a smart contract until both sides complete their part. It creates a fully trustless experience with built-in dispute handling. It’s not just a better experience — it’s a gateway to bring everyday people in Latin America on-chain through something they already do: trading tickets. Contract in Base Sepolia: 0xA8e38e6Ea909Efd8852A027CBe126a0ac3dc4983 Contract in Base Mainnet: 0x30B454b381B4dbac865d9B0Be00c211a29a087C1
How it's made
Challenges we ran into One of the biggest challenges I faced was balancing privacy with usability. Since Trutix is a peer-to-peer protocol between anonymous users, I needed to find a way to enable smooth communication without revealing personal information on-chain. To solve this, I decided to store lightweight metadata (like trade context, timestamps, and display labels) in a centralized database. This doesn’t affect the security or logic of the smart contract, but it allows the frontend to feel more intuitive, personalized, and human. It also helps coordinate actions between parties — like when to send or confirm ticket delivery. Another unexpected challenge was language. Since I’m targeting everyday people in Latin America — not crypto-native users — I interviewed real buyers and sellers to refine the interface language. That’s why the app says “Login” instead of “Connect Wallet” and “Digital dollars” instead of “USDC”. These small details make a huge difference in onboarding people on-chain. I also struggled with timing logic in the contract. Ideally, I wanted trades to expire or finalize automatically after 12 hours, but due to EVM limitations, that requires external triggers. For now, I solved this with timers in the UI and manual actions. In the future, I plan to automate this with Chainlink or Base-native solutions. Finally, I learned that on Base Sepolia, gas fees were subsidized — but once I moved to Base Mainnet, users had to cover their own transaction fees. This created an unexpected barrier for testing with real users. Thankfully, I’ve already explored Coinbase's developer tools and I know I’ll be able to integrate gasless transactions using their sponsor wallet infrastructure. That’s going to be essential for making Trutix truly accessible at scale in Latin America.