Plugin SDK

Build plugins that extend Whatalo's admin with full-page iframe applications — from analytics dashboards to custom order management tools.

What is a Plugin?

A Whatalo plugin is a web application you host on your own server. It appears in the admin sidebar as one or more full-page views. Store owners install your plugin from the marketplace or directly via a private link.

You build it with any framework — the default template uses React and Vite. Communication between your plugin and the admin happens through the App Bridge, a postMessage protocol included in @whatalo/plugin-sdk.

How It Works

┌─────────────────────────────────────────────┐
│              Whatalo Admin                   │
│                                             │
│  Sidebar → /integrations/your-plugin        │
│                                             │
│  ┌─────────────────────────────────────┐   │
│  │         Plugin iframe                │   │
│  │  (your server, sandboxed)            │   │
│  │                                      │   │
│  │  ← whatalo:init      (handshake)     │   │
│  │    whatalo:action → (ready signal)   │   │
│  │  ← whatalo:context   (store data)    │   │
│  │    whatalo:action → (toast, nav...)  │   │
│  │  ← whatalo:ack       (confirmation)  │   │
│  └─────────────────────────────────────┘   │
└─────────────────────────────────────────────┘
          ↕ REST API (scoped permissions)
    Your plugin server ↔ Whatalo store data
  1. You build a web app and host it on your own infrastructure
  2. Whatalo loads it in a sandboxed iframe inside the admin sidebar
  3. The App Bridge exchanges messages between your plugin and the admin
  4. Your server calls the Whatalo REST API using a scoped access token

Quick Install

npx create-whatalo-plugin

Follow the prompts to name your plugin, then:

cd my-plugin
whatalo login
whatalo dev

Open the admin dashboard — your plugin appears in the sidebar immediately.

What You Can Build

CapabilityHow
Custom admin pagesadminUI.pages in manifest — each page is a sidebar entry
Store data accessREST API with 15 permission scopes (read:orders, write:products, etc.)
Real-time events13 webhook events (order.created, product.updated, etc.)
Admin actionsApp Bridge: toast notifications, navigation, modals
BillingSubscription plans with trials — monetize your plugin
DistributionPrivate (own stores) or public via marketplace review

SDK Sections

SectionDescription
Quick StartGo from zero to a running plugin in under 15 minutes
Platform OverviewWhat the plugin platform is and how it fits together
Plugin ArchitectureIframe model, App Bridge protocol, security model
PrerequisitesWhat you need before you start
Build Your First PluginFull end-to-end tutorial
CLI ReferenceAll 14 CLI commands documented
ConfigurationManifest format, TOML config, permission scopes
App BridgeContext hook, actions, billing bridge
API ClientREST API — products, orders, customers, inventory
Webhooks13 event types, verification, handling
BillingPaid plans, trials, subscription management
UI ComponentsPre-built components that match admin design language
PublishingSubmit for review and distribute
Best PracticesSecurity, performance, error handling

On this page