Event Types

An event type is named <object>.<action>: the object that changed, as the API names it, and what happened to it. A webhook receives only the event types it lists in eventTypes, so new event types never reach the webhooks you already have.

Event typeSent whendata.object
membership.createdA membership is created: bought online or at the till, made in the back office or with Create Membership, redeemed with a gift card, or renewedMembership
membership.updatedA property of the membership changes, for example validTo or autoRenewMembership
membership.deletedA membership is deleted, or the order it was bought on is refundedThe Membership as it was when it was deleted

Memberships

data.object is the Membership as Get Membership returns it at the time of the change, without changeLog.

  • Renewals: a renewal is a new membership. You receive membership.created with previousMembershipId set to the membership it renews, and renewal: true.
  • Cancelled subscriptions: when a member stops automatic renewal, autoRenew turns false and you receive membership.updated.
  • Start and expiry: active follows validFrom and validTo as the days pass, without a webhook event. Keep the dates and work out from them whether a membership is active.

membership.created

Copy
{ "id": "5f0c3a8e-6d2b-4c1e-9a7f-2b8d4e6f1a3c", "type": "membership.created", "createdAt": "2026-11-03T10:15:42.123Z", "testMode": false, "data": { "object": { "id": "bd4a0997-39db-41d9-883a-cdfa83e2101f", "createdAt": "2026-11-03T10:15:41.870Z", "updatedAt": "2026-11-03T10:15:41.870Z", "validFrom": "2026-11-03", "validTo": "2027-11-03", "active": true, "autoRenew": true, "autoRenewed": false, "previousMembershipId": null, "renewal": false, "customerId": "8f14e45f-ceea-467a-9b5e-1d3c2a4b6e7f", "secondaryCustomerId": null, "order": { "id": "f0a52c7e-9e04-4bb4-bd38-1bb88e1dd0e4", "salesChannelType": "WEB" }, "extensions": [], "membershipType": { "id": "0c1de555-6f74-4a83-91b0-0f6594306ac1", "title": "Yearly", "cycle": "YEARLY", "price": 54000, "origin": "WEB" } } } }

membership.updated

The member turned automatic renewal off:

Copy
{ "id": "c2a7e9d4-3b1f-4e8a-a6c5-7d9e0f1b2c3d", "type": "membership.updated", "createdAt": "2026-12-01T08:02:11.540Z", "testMode": false, "data": { "object": { "id": "bd4a0997-39db-41d9-883a-cdfa83e2101f", "createdAt": "2026-11-03T10:15:41.870Z", "updatedAt": "2026-12-01T08:02:11.512Z", "validFrom": "2026-11-03", "validTo": "2027-11-03", "active": true, "autoRenew": false, "autoRenewed": false, "previousMembershipId": null, "renewal": false, "customerId": "8f14e45f-ceea-467a-9b5e-1d3c2a4b6e7f", "secondaryCustomerId": null, "order": { "id": "f0a52c7e-9e04-4bb4-bd38-1bb88e1dd0e4", "salesChannelType": "WEB" }, "extensions": [], "membershipType": { "id": "0c1de555-6f74-4a83-91b0-0f6594306ac1", "title": "Yearly", "cycle": "YEARLY", "price": 54000, "origin": "WEB" } } } }

membership.deleted

The order was refunded:

Copy
{ "id": "e7b3f1a2-9c4d-4f6e-8a1b-3c5d7e9f0a2b", "type": "membership.deleted", "createdAt": "2026-12-05T14:40:03.007Z", "testMode": false, "data": { "object": { "id": "bd4a0997-39db-41d9-883a-cdfa83e2101f", "createdAt": "2026-11-03T10:15:41.870Z", "updatedAt": "2026-12-05T14:40:02.981Z", "validFrom": "2026-11-03", "validTo": "2027-11-03", "active": true, "autoRenew": false, "autoRenewed": false, "previousMembershipId": null, "renewal": false, "customerId": "8f14e45f-ceea-467a-9b5e-1d3c2a4b6e7f", "secondaryCustomerId": null, "order": { "id": "f0a52c7e-9e04-4bb4-bd38-1bb88e1dd0e4", "salesChannelType": "WEB" }, "extensions": [], "membershipType": { "id": "0c1de555-6f74-4a83-91b0-0f6594306ac1", "title": "Yearly", "cycle": "YEARLY", "price": 54000, "origin": "WEB" } } } }
‹ Previous
Verifying Signatures
Next ›
Customer