Skip to main content

Case Study — SaaS · Payments

DameTicket — ticketing platform, and its v2 rewrite

DameTicket has sold real tickets since around 2021 on Laravel and Next.js with Redsys card payments. This case study is the v2 rewrite: Next.js, Prisma and a payment-provider interface, with authentication and SQL-backed data integrity, built end to end as a solo engineer.

  • Next.js
  • TypeScript
  • Prisma
  • MySQL
  • Redsys
  • React
  • NextAuth
~2021 (Laravel, Redsys)Live since
Next.js + Prisma + MySQLv2 architecture
RedsysPayment provider

Overview

DameTicket is a SaaS ticketing product I designed and shipped end-to-end. The goal was to let event organizers create paid events, sell tickets online, and manage attendees through their own ticketing platform.

The v1 platform has been selling real tickets since around 2021 on Redsys. The v2 rewrite carries the payment flow behind a provider interface, with Redsys payments and notification handling, persistent order history, and temporary reservations that hold tickets while a buyer completes payment.

What I built

  • A payment-provider interface with Redsys payment creation and notification handling. Redsys payment creation and notification handling power the live payment flow.
  • Prisma and MySQL schema for events, ticket tiers, orders and temporary reservations, designed to hold tickets while checkout is in progress.
  • Authentication and authorization flows for event organizers and buyers, including session-aware order history and email-based ticket delivery.
  • Multi-step event creation UI with image upload, ticket tier configuration, and capacity limits.
  • Redsys test and production configuration, with a stable development URL for payment and webhook testing.

Why this mattered

The live product handles ticket sales, QR access codes, and refund and cancellation support. The rewrite separates the payment provider from order and reservation handling, with temporary holds, payment notifications, ticket generation, and email delivery.

Reservation and payment state need to agree as buyers move through checkout. The provider interface keeps payment-specific handling separate from the order history and reservation workflow.

Outcome

DameTicket has been selling real tickets since around 2021 on Laravel and Next.js with Redsys card payments. This case study covers the v2 rewrite on Next.js, Prisma and a payment-provider interface: checkout, access control and organizer administration wired together by a single engineer.

Building a team that owns production?

I am open to remote senior and staff-level product and platform roles where technical judgment matters after the deploy, not only before it.

A useful first message

Send the role, product context, team shape, location constraints, and interview process. I will reply with the most relevant evidence from the systems I have shipped and operated.