Skip to main content

WaaS settings

Short answer: this page lists the settings on Waas > Settings (page title WaaS Settings) with their exact labels and defaults. Most operators only touch Platform Domain, the four page dropdowns, Auth Mode and Grace Period (days). The other tabs have their own pages, linked below.

Needs: Pro + WaaS

The tabs​

TabCovered on
GeneralThis page
AppearanceAppearance
Signup FlowSignup flow
EmailEmails
PlansPlans
Benefits, ServicesBenefits, services and add-ons
Billing ProvidersThis page and Payments
Activity Log, ProvisioningDashboard, activity log and provisioning
Add-onsBenefits, services and add-ons

The settings are stored in the WordPress option grabwp_waas_settings.

General tab​

WaaS General Settings

Click Save Changes after editing. The notice is Settings saved. The Repair tools and API Keys sections have their own buttons and are not saved by Save Changes.

Platform​

LabelDefaultWhat it does
Platform DomainEmptyThe main domain customer subdomains are made under (example.com gives slug.example.com). No http://, no trailing slash. Hidden when routing is Path. With Path and domain routing, leaving it empty gives customer sites path URLs.
WaaS DirectoryEmpty (placeholder grabwp-tenancy-waas)Where WaaS keeps its files: relative to the uploads folder, or an absolute path. The resolved path shows next to the field.
Signup PageSelect a page (falls back to /signup/)The page with [grabwp_waas_signup]. Has a View link.
Dashboard PageSelect a page (falls back to /dashboard/)The page with [grabwp_waas_dashboard]. Has a View link.
Templates PageSelect a page (falls back to /templates/)The page with [grabwp_waas_templates]. Has a View link.
Pricing PageSelect a page (falls back to /pricing/)The page with [grabwp_waas_pricing]. Has a View link.

In path mode (routing set to Path under Tenancy > Settings > Routing), the Platform Domain row and the whole Custom Domains section are hidden, and the page says customer sites open under your main address with no DNS needed.

A page you pick is used only while it is published. If you move it to draft, WaaS falls back to the default address.

Authentication​

LabelDefaultWhat it does
Auth ModeWAAS Auth (Email signup) (waas_auth)WAAS Auth (Email signup) creates the customer's account during signup; they then sign in with a code sent by email. WordPress Auth (Login required) (wp_auth) needs an existing WordPress login before a site is created.

Custom Domains​

LabelDefaultWhat it does
Domain ModeCloudflare SaaS (CNAME) (cloudflare_saas)How customers connect their own domains, and which DNS instructions they see. The other choice is Direct IP (A record) (direct_ip).
CNAME TargetEmpty (placeholder cdn.saas.example.com)Cloudflare SaaS only. The fallback origin customers point a CNAME at.
DCV DelegationEmpty (placeholder acme123.dcv.cloudflare.com)Cloudflare SaaS only. The DCV delegation value from Cloudflare, so SSL certificates validate automatically.
Server Public IPEmpty (placeholder 203.0.113.50)Direct IP only. The IP customers point an A record at.

Setup steps are on Client custom domains.

Retention and grace period​

LabelDefaultRangeWhat it does
Retention (days)907 to 365How long activity log rows are kept before the daily cleanup removes them.
Grace Period (days)70 to 90How long a site stays online after its subscription ends or is cancelled, before it is suspended. 0 means at once.

Repair tools​

ButtonWhat it does
Create/Repair Signup and Dashboard PagesCreates or reuses the Signup, Dashboard, Templates and Pricing pages and saves them. Notice: Signup and Dashboard pages checked.
Create/Repair WooCommerce Anchor ProductCreates or repairs the hidden WooCommerce product used for WaaS checkouts. Notice: WooCommerce anchor product is ready.

API Keys​

Only needed if another system calls the WaaS REST API. Keys are sent in the X-GrabWP-WaaS-API-Key HTTP header.

  1. Optionally enter a label (Key label (optional)).
  2. Click Generate New API Key.
  3. Copy the key from the notice. It is shown only once.

Existing keys list Label, Prefix and Created. Revoke asks Revoke this key?

Billing Providers tab​

LabelProviderDefaultWhat it does
Enable this providerEvery cardOffTurns the provider on. The first enabled provider is the default fallback. Cards show Active, Needs Config or Disabled, plus Default.
API Base URLPolar.shhttps://api.polar.sh/v1Live: https://api.polar.sh/v1. Sandbox: https://sandbox-api.polar.sh/v1.
API TokenPolar.shEmptyPolar API token. Required.
Webhook SecretPolar.shEmptyPolar webhook signing secret. Required.
Organization IDPolar.shEmptyPolar organization ID.
Secret KeyStripeEmptyStripe secret key (starts with sk_live_ or sk_test_). Keep it private.
Publishable KeyStripeEmptyStripe publishable key (starts with pk_live_ or pk_test_).
Webhook Signing SecretStripeEmptyThe webhook endpoint signing secret (starts with whsec_). Required to check signatures.
Thin Signing Secret (v2 Events)StripeEmptyOptional. The signing secret of a v2 event destination.
API URLSepayhttps://my.sepay.vnSepay API base URL.
QR URLSepayhttps://qr.sepay.vn/imgThe VietQR image address.
API KeySepayEmptyUsed to check Sepay webhooks. At least 10 letters or digits.
BankSepayNone selectedThe bank that receives payments.
Account NumberSepayEmptyYour bank account number. A Sepay virtual account number also works.
Account HolderSepayEmptyThe account holder's name.
Payment Code PrefixSepayDHStarts the payment code customers put in their transfer.
Secret API KeyXenditEmptyXendit secret API key (starts with xnd_).
Webhook Verification TokenXenditEmptyThe callback verification token from the Xendit webhook settings.
Charge CurrencyXenditIDRThe currency sent to Xendit: IDR, PHP, VND, THB, SGD, MYR or USD.
CountryXenditIndonesiaThe Xendit account country: Indonesia, the Philippines, Vietnam, Thailand, Singapore or Malaysia.
Anchor ProductWooCommerce0The hidden product used for checkout. 0 creates it on the first checkout.

Stripe, Sepay and Xendit fields appear only with their add-on installed. The WooCommerce card appears only while WooCommerce is active.

Currency Settings​

LabelDefaultWhat it does
Primary CurrencyUSDShown to customers on pricing pages and invoices. Plan prices are stored in it. Locked to the store currency while WooCommerce is enabled.
Secondary CurrencyNone (single currency)Optional. For a provider that needs another currency (Sepay needs VND).
Exchange Rate25500How many secondary units equal 1 primary unit. Used before charging a provider that needs the secondary currency.
Currency PositionLeft ($99.99)Also Left with space ($ 99.99), Right (99.99$) and Right with space (99.99 $). Under Display formatting.
Thousand Separator,One character, or empty for none. Under Display formatting.
Decimal Separator.One character. Under Display formatting.

New installs start with USD as the only currency and Polar.sh off until you configure it.