Haejeok Hopping

Haejeok Hopping

Booking and payment platform for pirate-ship island hopping tours in Cebu, Philippines — from tour discovery to Stripe checkout, reviews, and operations.

Overview

Haejeok Hopping is a responsive web platform for discovering, booking, and paying for pirate-ship island hopping and south Cebu tours in the Philippines. It covers the full tour business in one product: the public site and tour detail pages, real-time capacity-aware bookings, Stripe Checkout payments with policy-based refunds, purchase-verified reviews, on-site QR payments and attendance, and an operations center spanning reservations, revenue, and content. Signature extras include a sea guide that reads Cebu waters through weather/marine models and 3D seabed terrain, and a low-data mode built for both fast Korean networks and unstable local connections in the Philippines.

Highlights

  • Tour discovery — detail pages for pirate-ship, Bohol, and Nalusuan tours with schedules, pricing, and pickup info
  • Stripe payments — Checkout sessions, webhook signature verification, and idempotent policy-based refunds
  • Google and Kakao sign-in — member and guest bookings with automatic guest-to-member linking in My Page
  • Purchase-verified reviews — written only by actual customers and published after moderation
  • Operations center — KPI dashboard, reservation search and notes, review moderation, and refund/change audit logs
  • Low-data mode — automatic Save-Data and 2G/3G detection with text-first screens for local networks

Inside the product

6 views
Haejeok Hopping home page showing a pirate-ship video hero and booking navigation

Official home — brand hero

A full-screen video hero combines operating stats (years in Cebu, rating, travelers), promotion banners, a data-saver toggle, and a Kakao consultation entry point.

Haejeok Hopping tour explorer showing category filters and tour product cards

Tour discovery

Category filters — join hopping, private hopping, south tours, Bohol — and search help travelers pick their day, with product cards leading straight to details.

Haejeok Hopping tour detail page showing the Cebu pirate-ship tour introduction and booking price summary

Tour detail and booking flow

Departure time, duration, language, and pickup details sit alongside verified review ratings, with a price summary leading straight into booking and payment.

Haejeok Hopping reviews page showing the cumulative review count and a featured review photo

Real review archive

774 published reviews preserved with original photos and text, joined by members' purchase-verified reviews after moderation.

Haejeok Hopping sea guide showing 3D seabed terrain of east Mactan waters with an hourly weather timeline

Cebu sea guide — 3D seabed terrain

The GEBCO depth grid is rendered as a 3D mesh with tour routes and points overlaid, alongside hourly wind, wave, precipitation, and visibility data.

Haejeok Hopping low-data home showing a text-first screen with booking lookup buttons

Low-data mode

Save-Data and 2G/3G connections are detected automatically, dropping photos and animations for a text-first screen focused on bookings and account access.

Feature deep-dive

Booking & payment pipeline

  • Atomic booking creation guarding capacity with schedule row locks and 31-minute payment holds (Supabase RPC)
  • Idempotent Stripe Checkout and webhook processing — concurrent duplicate events apply exactly once
  • Booking calendar and real-time capacity cutoffs computed in the Asia/Manila timezone
  • Policy-based refund calculation and a daily Stripe payment reconciliation cron

On-site payments

  • One-time Stripe QR codes tied to a booking party for SD-card rental, extra charges, and on-site balance collection
  • Stripe dynamic payment methods surface KakaoPay, NaverPay, and local cards automatically
  • Tour payments and counter payments isolated with separate restricted keys and webhooks
  • Per-payment full-refund ledger with an idempotent refund API

Members & My Page

  • Google and Kakao OAuth (PKCE) sign-in plus guest booking lookup
  • Guest payments linked automatically to accounts via verified email on sign-in
  • Boarding pass — attendance QR, confirmed pickup details, and Apple Wallet tickets (.pkpass)
  • Purchase-verified reviews and schedule change/cancellation requests

Operations center

  • Four role tiers (staff, editor, admin, superadmin) with full audit logging
  • Departure board, printable A4 manifests, and per-currency KRW/PHP/USD booking and settlement ledgers
  • External channel booking imports normalized by OpenAI and registered only after admin review
  • Google Sheets 3-way sync and an installable admin PWA with QR attendance scanning

Notifications & messaging

  • SOLAPI Kakao AlimTalk, domestic SMS, and international SMS outbox with cron-driven retries
  • Resend email and SMS operational alerts on successful payments, deduplicated by idempotency keys
  • Facebook Messenger inquiry inbox with booking linkage
  • Korean/English delivery following each member's preferred language

Content & intelligence

  • Cebu sea guide powered by Open-Meteo and Windfinder weather/marine models
  • Seabed terrain view rendering the GEBCO depth grid as a 3D mesh
  • Naver Blog RSS integration with once-daily OpenAI English translation
  • Sitemap, robots, and JSON-LD SEO plus automatic low-data mode switching

Platform capabilities

  • Responsive site built on Next.js 16 App Router and React 19 with Korean and English localization
  • Supabase PostgreSQL — namespaced ledgers, single-transaction RPCs, and concurrency tests against an isolated database
  • Stripe Checkout and webhook handling across 13 event types with daily reconciliation and dispute tracking
  • Vercel deployment with four cron jobs: blog translation, payment reconciliation, notification dispatch, and sheet backfill
  • CSP and HSTS security headers on every route, request rate limiting, and route-handler integration tests

Experience the Cebu pirate-ship hopping tour

Visit Haejeok Hopping to explore tour products, verified customer reviews, and the booking experience.

Visit Haejeok Hopping