Product · Channels

The reward only counts if the message lands.

Customers rarely open a brand's app, so Flyhalf reaches them where they already are. WhatsApp is built in, with delivery receipts and automatic opt-out handling. Email is also native. Brands with their own app can add push notifications through it.

A person reading a phone at a kitchen counter, a mug beside them

WhatsApp, first-class

Where your customers actually read.

Messages send from your own WhatsApp Business account using templates Meta has approved, with their approval status shown in Flyhalf. Delivery receipts land on the message log, and a STOP reply opts the customer out automatically.

WhatsApp · reward_msg delivered
Sindi, your 5th order — Gold unlocked 🏅 Show this for a free dessert on us.
Claim it
Voucher FH-2291 — valid till Friday. Show it at the till.

What your customers see

Four messages. No additional app required.

Your customers don't need to install anything new. Flyhalf reaches them as WhatsApp and email messages from your business, and if you already have an app, the API brings the same badges and progress into it.

01
The invitation

A challenge, its rules and its deadline.

02
Progress updates

For example, "2 of 3 visits done. One more by Sunday unlocks your reward."

03
The badge

Awarded the moment they earn it, and they're told straight away.

04
The reward

A voucher code, or confirmation that points have landed in your existing loyalty programme.

Every channel, one log

Sent, delivered, read — or exactly why not.

Templates with variables

Write once with tokens like { participant.first_name } — previewed with real data before you publish.

Delivery logs, end to end

Each message shows queued → sent → delivered with timestamps and provider receipts. Failures say the cause and the fix.

Consent enforced

Customers opt in before they are messaged. Recorded permission, opt-outs and suppression lists are checked at send time, per channel.

Sandbox renders, never sends

Test sends render the full message and log it as simulated. Nothing reaches a real phone until a flow is live.