Book speedboat seats and pay in seconds.
SorongPass is a web app for speedboat ticket booking in Sorong, Indonesia, with live schedules, seat availability, account management, and payment handling. It helps local passengers and travelers find departures, reserve seats, pay securely, and receive booking confirmations without relying on manual counter processes or scattered chat messages.
Traveling Passenger Rina, 29 - Rina travels from Sorong to nearby islands for work and family visits. She needs a fast way to see departure times, compare options, and pay without standing in line at the harbor.
Operator Admin Budi, 41 - Budi manages ticket sales for one boat route and updates departures based on vessel readiness, passenger demand, and weather conditions. He needs a simple dashboard that reduces phone calls and manual spreadsheets.
Counter Staff Sari, 34 - Sari helps passengers at the boarding counter and needs to quickly verify reservations and payment status. She works with customers who may have limited connectivity or prefer assisted booking.
Rina needs to travel from Sorong to a nearby island the next morning. Instead of calling around or visiting the ticket counter, she opens SorongPass, checks departures, sees available seats, and completes her booking in a few taps on her phone.
She pays using QRIS, gets an instant confirmation, and saves her ticket code. When the operator updates the departure time later that day, she receives a notification immediately, so she arrives on time and avoids uncertainty at the harbor.
For the operator, the system replaces spreadsheets and manual phone confirmations with accurate inventory, payment tracking, and passenger records. That means fewer booking errors, faster checkout, and a smoother travel experience that can scale across more routes in Sorong.
Team & resourcing - Small team - 2 full-stack engineers, 1 product designer, part-time PM, and shared QA/ops support.
Paste this into Cursor, Bolt, Lovable, or v0 to start building.
Build a mobile-first web app called SorongPass for speedboat ticket booking in Sorong, Indonesia. Core product: Passengers browse live schedules, reserve seats, pay online, and receive booking confirmations. Operators manage routes, departures, seat inventory, cancellations, refunds, and sales reporting. Counter staff can search and verify bookings quickly. Tech stack: Frontend: Next.js, TypeScript, Tailwind CSS, shadcn/ui Backend: Node.js with NestJS or Express, TypeScript Database: PostgreSQL with Prisma ORM Cache/locks: Redis for seat holds and rate limiting Jobs: BullMQ for payment reconciliation and notifications Auth: phone/email OTP login Payments: Midtrans or Xendit with webhook handling Storage: S3-compatible object storage for receipts and exports Required screens and flows: 1. Landing page with route/date search and featured departures 2. Search results list with price, seat availability, time, terminal, and sold-out states 3. Booking flow with seat hold countdown, passenger details form, payment selection, and confirmation 4. User account area showing upcoming, completed, canceled, and refunded bookings 5. Admin dashboard for route/schedule management, inventory, payment status, refunds, and reports 6. Counter staff booking lookup by name, phone, or booking code Data model: User, Operator, Route, Vessel, Departure, SeatInventory, Booking, BookingPassenger, PaymentTransaction, Refund, Notification, AuditLog, CheckIn Key business rules: Seat inventory must be locked atomically to prevent overbooking. Payment confirmation must be webhook-driven and idempotent. Booking holds expire after 10 minutes if unpaid. Admin edits to schedules must log an audit record. Users can only cancel when operator policy allows it. Implementation details: Create responsive mobile-first UI, clear status badges for pending/paid/failed/refunded, and accessible forms with inline validation. Add seeded demo data for Sorong routes. Include API routes, database schema, and realistic empty/loading/error states. Prioritize a clean, production-ready structure with reusable components and simple admin UX.
Design by The Resonance | Powered by GPC – The AI Transformation Company