Back to BlogGeneral

Loyalty program webhooks: the events and what to build

Fideliya’s webhooks send ten events to an address you choose, on the Enterprise plan from €99.99 a month: a customer joining, every scan at the counter, a scan undone, a reward reached, a referral completed, a gift card sent or spent, a new pass design and your own subscription changes. Each delivery is signed and retried.

Every webhook event Fideliya sends, what each one tells your systems, and four things your developer can build on them with nothing else to buy.

By Zakaria Fahim · October 22, 2026 · 6 min read

When a regular comes back, your loyalty program knows it first: the scan at the counter records the visit and the pass in their Apple Wallet or Google Wallet updates. Webhooks make sure your own systems know it too, the same second. Your CRM, your books, the screen in the back office: each one hears about the visit, the reward and the gift card payment without anyone copying a figure by hand.

A scan at the counter adds a stamp or points, and the pass updates on the customer’s phone.

What is a loyalty program webhook?

A webhook is a short message Fideliya sends to an address on your own server the moment something happens in your program. Your developer adds the address in your Fideliya dashboard and picks the events it should receive. From then on, each time one of those events happens, Fideliya posts it there as JSON: what happened, when, for which business, and the details that go with it.

Nothing changes for your customers. They join by scanning the QR code at your counter and giving a name and an email, and the pass lands in Apple Wallet or Google Wallet, with no app to download and no account or password to create. The webhooks run between Fideliya and your systems.

Every event Fideliya sends

These are the ten events, under the exact names your developer subscribes to.

EventWhen it is sentWhat it tells you
customer.createdA customer joined one of your passesWho joined: their name, their email, their phone if they gave one, which pass, and which wallet it went to
scan.recordedA pass was scanned at the counter: a visit, points, a reward redeemed or a reward claimedWhich customer, what the counter did, the new count, the rewards ready, the counter it happened at, and the amount typed with a points scan
scan.voidedA scan was undone at the counter within seconds of it, because it was a mistakeWhat was undone (a visit, a reward given, a points reward claimed or a gift card payment) and the count or balance after the undo
milestone.reachedA customer reached a rewardWho, the reward’s name, and how many rewards they have reached on that pass in all
referral.completedA referred friend made their first visit, so both earned their bonusWho brought whom, and the bonus each one earned
gift_card.sentA gift card email was accepted for delivery, when issued or sent againThe recipient, the amount, the balance, the currency, and whether it was a resend
gift_card.spentA payment was taken from a gift card, at the counter or through the APIThe amount taken, the balance left, the counter, your till’s own reference when it gave one, and whether the scanner or your system took it
pass.createdA new pass design was createdThe pass, its style, stamps (visits) or points, and the goal to a reward
subscription.createdYour Fideliya subscription startedThe plan, its status, the current period, and whether it is a trial
subscription.cancelledYour Fideliya subscription was cancelledWhen it was cancelled

The two subscription events are account events: every endpoint on your account receives them, whichever business it belongs to.

Two more your developer will meet

webhook.test is what the Send test event button in your dashboard sends: it is never the result of a real action, so your developer can check the connection without a customer at the counter. webhook.ping is a health check Fideliya sends to an endpoint it had to pause; your server only has to answer it with a success.

Four things to build with webhooks and your own systems

None of these needs anything beyond Fideliya’s webhooks and the systems you already run.

  1. A thank-you from your own CRM when a regular reaches a reward. Keep each customer.created in your CRM under its customer id. When milestone.reached arrives with the same id and the reward’s name, your CRM sends the thank-you you wrote, from your own address. The message and its timing are yours.
  2. Gift card sales that reconcile themselves. Each gift_card.spent carries the amount, the balance left, the counter and, when your till took the payment through the API, its own ticket number. Match it against the day’s receipts and the gift card line of your books closes without a manual count. A payment undone at the till follows as scan.voided, so the undo lands in the same ledger.
  3. A screen of scans per branch. scan.recorded names the counter each scan happened at. Count them per location through the day and you have a live board of how each branch is doing, with scan.voided taking back the mistakes.
  4. A thank-you list for your team. referral.completed names the customer who brought a friend. A list in your own system tells your staff who to thank in person on that customer’s next visit.

How deliveries behave

Every delivery is signed with your endpoint’s secret, in the Standard Webhooks format, so your system can check it came from Fideliya before trusting it. Each event carries an id that stays the same on every attempt: store it, and you never count the same visit twice.

If your server is down or answers with an error, Fideliya tries again, spacing the attempts out over about a day. An endpoint that keeps failing for days is paused. Fideliya then checks it with webhook.ping, and after two successful answers in a row it resumes the endpoint and replays what it missed.

Which plan, and where your developer starts

Webhooks come with the Enterprise plan, from €99.99 a month or €79.99 a month billed yearly, along with Fideliya’s API, unlimited customers and locations, and 10 team seats. The full reference, with every field of every event, an example of each and its JSON Schema, is in the webhooks documentation.

If your till should also write to your program, recording visits and taking gift card payments, that is the API: what it changes for an owner is in what a public API changes for a small loyalty program, and the short version is on connecting Fideliya to your till. Every plan and price is on the pricing page.

Frequently asked questions

Which webhook events does Fideliya send?

Fideliya sends ten: customer.created, scan.recorded, scan.voided, milestone.reached, referral.completed, gift_card.sent, gift_card.spent, pass.created, subscription.created and subscription.cancelled. Your developer also meets webhook.test, sent by the Send test event button, and webhook.ping, a health check to a paused endpoint.

Which Fideliya plan includes webhooks?

Fideliya’s Enterprise plan, from €99.99 a month or €79.99 a month billed yearly. It also includes the API, unlimited customers and locations, and 10 team seats.

How do I know a webhook really came from Fideliya?

Every Fideliya delivery is signed with your endpoint’s secret, in the Standard Webhooks format. Your system checks the signature before it trusts the message, and the webhooks documentation shows how.

What happens if my server is down when a customer scans?

Fideliya tries the delivery again, spacing the attempts over about a day, and the event keeps the same id on every attempt so you never count it twice. An endpoint that keeps failing is paused, checked, and replays what it missed once it answers again.

Can my CRM thank a customer when they reach a reward?

Yes, your CRM can. milestone.reached tells your system which customer reached a reward, and the reward’s name, the moment it happens; your CRM then sends the thank-you you wrote. Fideliya itself sends nothing to the customer from a webhook.

Ready to create your own loyalty pass?

No card. If your regulars don't join, you pay nothing.

Start your 14 days free

See a pass in your wallet in ten seconds

Compare Fideliya with alternativesCalculate your ROI
Add to Apple WalletAdd to Google Wallet
© 2026 Fideliya. All rights reserved.
Loyalty program webhooks: the events and what to build — Fideliya Blog