Home / Checker reference / paddle-billing

Rule · engine · active v1

Paddle billing integration check

active
engine

Paid plans only change through signed webhooks. If an entitlement flips any other way, billing and product have already diverged.

What it checks

The Paddle webhook endpoint is verified against its HMAC signature over the raw body, recent entitlement transitions are timed from event to flip, the customer portal is fetched live, and gated routes are probed below and above plan.

Pass conditions

  • Paddle webhook verified, entitlements flip in ~10s, portal live, plan gates enforced
  • Only signed webhooks mutate entitlements — unsigned or replayed deliveries change nothing.
  • Portal sessions are created per customer and resolve without error.

Typical fails

Unsigned webhook deliveries accepted; entitlement flips lagging past the ~10s budget or never landing; portal misconfiguration returning errors; plan gates checked client-side only.

Fix checklist

  • Verify the Paddle signature over the raw body before parsing any event.
  • Replay subscription.created/updated and transaction.completed in staging; assert the flip lands in ~10s.
  • Enforce plan gates server-side on every gated route, not just in the UI.
Official source: Paddle billing documentation (demo placeholder link) · Status: engine, active v1, sole audit basis for billing integration

See it on your own pages

Run a free audit on your own pages

SEO Watch checker reference · one page per active rulepaddle-billing · v1