Skip to main content
Fired when a customer redeems a custom reward — a reward you fulfil yourself, such as a consultation, an event invite, or a gift sent by hand. Custom rewards do not generate a discount code, so this webhook is how your systems find out that a customer is waiting on you. At this point the points have been deducted and the redemption is recorded. It does not mean the customer has received the reward yet — that is tracked separately when you mark the redemption as used in the Mage Loyalty dashboard.

Configuring this event

This event cannot be subscribed to from Settings > Webhooks or through the subscriptions API. It is managed by the reward itself.
To receive it, edit your custom reward in the Mage Loyalty dashboard, set Notification method to Webhook (or Email & Webhook) and enter your endpoint URL. Mage Loyalty creates a webhook subscription for that reward automatically and displays its signing secret once. You can also set a Reward identifier — a short handle such as surprise-gift-next-order that is sent as reward_identifier so your automation can tell rewards apart without relying on the display name. Leave it blank and Mage Loyalty uses a slug of the reward name. The subscription then behaves like any other: it appears in Settings > Webhooks marked Managed by reward, where you can send a test request and inspect delivery logs. Changing or removing the URL is done on the reward, and deleting the reward deletes the subscription. The reward form also has a Send test webhook button, which delivers a payload with test set to true so you can confirm your endpoint before any customer redeems.

Payload fields

Store-credit shops

Custom rewards are available on points-mode shops only, so this event never carries the loyalty_mode, currency or credit_* companion fields described in Loyalty modes. points_spent is always a points value.

Delivery and retries

Responding with any 2xx status code marks the redemption’s notification as delivered. Anything else is retried up to 5 times with exponential backoff — more than the 3 retries used by other events, because this webhook is often the only signal that a customer is waiting. After the final failed attempt the redemption is flagged as failed in the dashboard. The redemption itself is never reversed: the customer keeps the reward and it still appears on the reward’s Redemptions page, which lists every customer who has redeemed regardless of webhook outcome.

Example payload

Common use cases

  • Trigger a Zapier or Make automation that adds the customer to a booking sheet or CRM
  • Create a ticket in a helpdesk so your team can arrange the reward
  • Notify a fulfilment partner that a hand-packed gift needs sending
  • Post to a Slack channel so whoever is on duty can follow up