Project Detail

Overseas SaaS Membership System

Next.jsReactNestJSMySQLRedis

An independently delivered overseas SaaS membership system consisting of a brand website, operations admin console, and client-embedded membership center — forming a complete product loop from user acquisition to subscription fulfillment.

Background

As the product expanded into overseas markets, a unified membership service system was needed to support user growth and monetization. The core requirement was: acquire users via the brand website, manage members via the admin console, and serve users through the client-embedded membership center — all three sharing the same account, subscription, and permission model.

public

Technical Challenges

  • account_tree
    Multi-Platform Architecture
    Different tech stacks across website, admin, and embedded module, yet needing to share unified user model, subscription state, and permission system.
  • payments
    Subscription Payment Loop
    Implementing subscription creation, auto-renewal, plan changes, refunds, and Webhook-driven state sync across Stripe and PayPal dual payment channels.
  • integration_instructions
    Client Embedding Constraints
    The membership center is embedded as a web module in the desktop client, requiring host communication, auth passthrough, and UI adaptation in a constrained container.

Core Solutions

Engineered for Excellence

01.

Next.js Brand Website

Built with Next.js using SSR/SSG hybrid rendering for multi-language SEO and fast initial load, serving as the product showcase, pricing, and subscription entry point.

02.

React + NestJS Admin Console

Frontend built with React for member management, order queries, and data dashboards; backend uses NestJS + Prisma for RESTful APIs managing users, subscriptions, payments, and RBAC.

03.

React Embedded Membership Center

Built with React as a lightweight web module embedded in the desktop client. Uses PostMessage for auth token passing and event communication, handling plan details, usage stats, and renewal within a constrained viewport.

Architecture

NestJS + Prisma forms the unified business layer, providing consistent user, subscription, and permission APIs to all three modules. Stripe and PayPal handle payment lifecycle, Redis handles session cache and rate limiting.

devices
Next.js / React
arrow_forward
FULL STACK CORE
Website
Admin Console
Membership Center
PrismaData Model
RedisSession Cache
Stripe / PayPalPayment

Gallery

Overseas SaaS Membership System
Overseas SaaS Membership System
Overseas SaaS Membership System

Interested in this project?

If you'd like to learn more about the technical details or have a similar project, feel free to reach out via email.