GrabWP WaaS — Overview
Build your own WordPress-as-a-Service platform with self-service signup, templates, and billing
Prerequisites
What you need before setting up GrabWP WaaS
What You Will Build
Tutorial goals, architecture, and customer signup flow for your WaaS platform
Install Plugins
Install GrabWP Tenancy, Pro, and WaaS plugins in the correct order
Configure Pro Settings
Set up tenant isolation, database type, directory paths, and S3 storage defaults
Configure WaaS General Settings
Set up platform domain, authentication mode, frontend pages, custom domains, and API keys
Create Plans
Define free and paid plans with pricing, features, and billing provider integration
Set Up Billing
Connect Polar as a payment provider for subscription billing
Set Up Templates
Create site templates with tags, plan restrictions, and thumbnails for the customer gallery
Set Up Frontend Pages
Create signup, dashboard, and template browser pages using shortcodes or Gutenberg blocks
Go-Live Checklist
Verify DNS, SSL, billing, templates, and end-to-end signup before opening to customers
Managing Custom Domains
Let customers use their own domains via Cloudflare SaaS or direct IP mode
Managing Subscriptions
View, extend, change, suspend, and audit tenant subscriptions as an admin
S3 Object Storage
Offload tenant media uploads to Cloudflare R2, AWS S3, DigitalOcean Spaces, or any S3-compatible provider
WooCommerce Billing
Use WooCommerce as an alternative billing provider for local payment gateways
Troubleshooting
Fix common WaaS issues — provisioning failures, webhook problems, template errors, domain verification, and email delivery
Shortcode Reference: Template Browser
All attributes for [grabwp_waas_templates] — pool filtering, tag pills, pagination, and URL parameters
Block Walkthrough: Template Browser
Configure the GrabWP Template Browser Gutenberg block using the visual Inspector sidebar