Planning Center webhooks: subscribe to events and verify signatures
domain: planningcenteronline.com · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
Steps
Create a webhook subscription from the Webhooks Dashboard (api.planningcenteronline.com/webhooks) or the Webhook Subscriptions API, picking an event category (People, Giving, Check-Ins, etc.) and a delivery URL.
Note webhooks are created under a specific user account and only deliver data that user can see — Giving webhooks generally require an Admin or Bookkeeper role.
On delivery, verify authenticity by computing an HMAC-SHA256 signature of the raw payload with the subscription's shared secret and comparing it against Planning Center's signature header before trusting the payload.
Process events idempotently (dedupe by event id) since Planning Center does not guarantee exactly-once or in-order delivery.
If an event references a record that isn't found yet (e.g. a donation.created event arriving before its profile.created event), fetch the missing record via the REST API rather than assuming a broken payload.
Known gotchas
Delivery order is not guaranteed across related events — design handlers to tolerate out-of-order arrival.
Exact signature header name/algorithm should be re-confirmed against the live docs at build time rather than assumed.
Each Planning Center product (Giving, People, Check-Ins) has its own webhook event catalog, so a single receiving URL must branch on payload/event type.
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?