
Malaysians increasingly pay for big purchases with Buy Now, Pay Later, but most flight-booking sites only take cards. Tripin wanted a platform that quotes live fares from hundreds of airlines, settles them through local pay-later providers, and gives a small operations team the tools to run bookings, refunds and promotions without calling a developer.
We built Tripin end to end: a fast React front end for search and checkout, and a Supabase back end with 38 edge functions handling fares, orders, payment callbacks and emails. Live fares come from the Duffel API, payments route through CommercePay and Razorpay, and the business runs from an in-house admin console. The same platform later gained Tripin Flex travel credit and a race-ticket storefront for the MotoGP and Formula 1 events at Sepang.
What's inside Tripin Tours
Live flight search
Return, one-way and multi-city search across 600+ airlines via the Duffel API, with flexible-date grids and filters.
Pay-later checkout
Shopee PayLater, Grab PayLater and Atome through CommercePay, plus card payments via Razorpay, all verified server-side.
Race-ticket storefront
MotoGP and F1 ticketing with an interactive Sepang grandstand map, ticket tiers, add-ons and partner voucher codes.
Tripin Flex travel credit
Customers buy travel credit with their preferred pay-later provider, then book with an agent on a live video call.
Customer dashboard
Bookings, wallet, travel-credit balance and transaction history, plus booking lookup for guests.
Admin console
16 admin screens for bookings, users, vouchers, pricing, event tiers and orders, with one-click maintenance mode.
A closer look




Built with
- React
- TypeScript
- Vite
- Tailwind CSS
- shadcn/ui
- Supabase
- Postgres
- Edge Functions
- Duffel API
- CommercePay
- Razorpay
- Resend
- Firebase Hosting
SuperSuri
Kitchen management app for Malaysian households
View case study