Redemption Notifications¶
A customer who pays with a gift card walks away without knowing what is left on it. Redemption notifications close that gap: every time a card is used, the cardholder gets an email, a text message, or both, with the date, the amount taken off, the balance remaining and — for in-store purchases — the branch where it happened.
This is what a bank does after a card payment, and customers expect the same from a gift card. It also cuts down "how much is left on my card?" enquiries, and the depletion message is a natural moment to bring someone back.
Go to Notifications in the left navigation, then open the Redemption notifications tab.
The tab holds the policy — whether notifications are on, when they go out, on which channels, and through what. Each message is edited on a page of its own, where a preview and a test send travel with it, and the delivery log has a page of its own too.
Turning notifications on¶
Notifications are off until you turn them on, and the switch is per store.
Turning them on subscribes GiftCard Hero to your store's payment events so it hears about a redemption the moment it happens — at the till as well as online. Turning them off unsubscribes again; nothing is sent and nothing is recorded.
When to send¶
Two triggers, and you can use either or both:
- Every time a card is used — an email after each redemption, whatever the balance.
- When the balance reaches zero — a single "your card is now fully used" email.
With both on, a redemption that empties the card sends one message per channel, not two — the depletion wording replaces the ordinary one.
With only the second option on, customers hear from you once, at the end. That suits stores where cards are typically spent over many small purchases and a message per coffee would be noise.
You cannot save the settings with the feature on and neither trigger selected: that would subscribe to the events and then discard every one of them.
Including the branch¶
Show the branch where the card was used adds the store location to the email.
The location comes from the till the sale was made on, so it appears on in-store purchases and is absent on online orders. When there is no location, the row is left out of the email rather than shown empty — nothing to configure for online-only stores.
For multi-branch retailers this is usually the most useful line in the email: it tells the cardholder where the money went, which is what makes an unexpected charge recognisable.
Channels¶
Tick the channels the notification goes out on — Email, SMS, or both. Each is delivered on its own: a card with an email address but no phone number still gets the email, and a text that the gateway refuses does not hold up the email.
SMS can be ticked once an SMS gateway is connected in Settings → Integrations — see Integrations. The row names the gateway and the sender ID the texts arrive from. Text messages go out on your own gateway account and are billed to you by the gateway per message; the SMS editor shows what each message will cost.
You cannot save the settings with the feature on and neither channel ticked.
Delivery method¶
Under Email, choose the pipe that carries it:
- GiftCard Hero email — the default. We render the email template and send it from our mail server. Nothing to set up, but the email does not come from your own domain.
- Your mail server (SMTP) — the same email, sent through your own mail server, so it arrives from your domain. Selectable once you add a server in Settings → Integrations.
- Klaviyo — instead of sending anything itself, GiftCard Hero sends a Gift Card Redeemed event to Klaviyo and a Flow you build there sends the email. The email template is not used in this mode, and until that Flow exists your customers receive nothing. Once Klaviyo is selected, a Send a test event link appears under it: it opens a small form that pushes a sample event with every property filled, so you can build the Flow against it — see Integrations.
Each notification picks its own pipe. Reminders and redemption emails can go out through different ones — Settings → Integrations only holds the credentials. See Integrations for setup.
The SMS has no delivery method to choose: it always goes through the gateway connected in Integrations.
Messages¶
The Messages section shows each message in one line — the email's subject, the SMS as the customer reads it, whether each is the built-in version or yours, and how it goes out (or why it is not going out: the channel is off, Klaviyo sends it, no gateway is connected). Edit template on each row opens its editor.
Every editor shows, under its title, through what the message leaves, with a Change link to where that is chosen. On the right it lists the variables and says whether you are on the built-in message or your own; Reset to built-in puts ours back.
The email template¶
Leave the template as the built-in one and customers get ours, which already covers both the ordinary and the depletion wording. Edit it and yours is used instead — including, from then on, in place of any improvements we make to the built-in one. A field cleared to empty is read as "use the built-in one".
Available variables:
| Variable | What it holds |
|---|---|
{{ amount }} |
Amount taken off the card, in your store's currency format |
{{ balance }} |
Balance remaining after this redemption |
{{ date }} |
When the redemption happened |
{{ branch }} |
Store location, empty for online orders |
{{ card_last4 }} |
Last four characters of the gift card code |
{{ depleted }} |
True when this redemption emptied the card |
{{ customer.first_name }} |
Cardholder's first name, when known |
{{ shop.name }} |
Your store name |
Wrap anything that may be absent so the email reads correctly either way:
{% if branch %}Used at {{ branch }}.{% endif %}
{% if depleted %}
Your card is now fully used.
{% else %}
You have {{ balance }} left.
{% endif %}
Preview renders the template against sample figures, exactly as the customer would see it. Send test email opens a small form with the address to send to, prefilled with your store's contact email; the test goes out through the same pipe the real notification uses, so it also proves your SMTP settings deliver. The subject is marked [Test].
The SMS template¶
The same variables as the email are available, and the same rule applies: leave it as the built-in text and you get ours, edit it and yours is used.
The built-in text is one message long and reads, for an ordinary redemption:
Artcaffe: KSh 1,500.00 used from gift card *4242 at Westlands. Balance left: KSh 3,500.00.
and, when the card is emptied:
Artcaffe: KSh 1,500.00 used from gift card *4242 at Westlands. The card is now fully used.
Under the editor, the preview shows the message as the customer will read it — both the ordinary and the depletion wording — and how many messages each one costs, updated as you type. A text is billed per segment: 160 characters for plain text, 70 once it contains a character outside the basic Latin set (an emoji, a curly quote, some accented letters), so a small edit can double the cost of every message. The counter is computed on the rendered text, not on the template, so the tags themselves do not count.
Send test SMS opens a small form for the number to send to. The test is rendered against sample figures and sent through your gateway — so it also proves the gateway delivers, and shows you the message on a real phone. A local number is read as one on the gateway's country. One real message is sent and billed.
Delivery log¶
The Delivery log section on the tab sums up the last seven days — how many messages were sent, failed and not sent — and names the most recent redemption. View delivery log opens the full log on its own page.
The log lists every redemption picked up and what became of each message: the date, the card, the amount, the balance left, the branch, and one column per channel — who it went to and how it ended. Search by the card's last characters, an email address, a phone number or an order name; narrow by status, by channel, and by period (the last 7, 30 or 90 days, or all time).
Statuses, per channel:
- Sent — the message went out.
- Failed — the send was rejected. Hover the badge for the reason; a wrong SMTP password, a rejected address and an unregistered SMS sender ID all show up here. A failed channel is retried a few times on its own — the other channel is not sent again.
- Not sent — the redemption was recorded but this channel deliberately did not go, with the reason next to it. Most often "no email address (or phone number) is known for this gift card", or a card that still has a balance in a store that only sends depletion notifications.
A channel that is not ticked shows a dash.
Under the address or number the log names where it came from — the gift card recipient, the gift card record, the delivery schedule, or the order's customer. This is what separates "nothing was sent" from "it went to the wrong person": a card bought as a present and never assigned to its recipient falls back to the buyer's details, and this line is what shows you that.
How the recipient is found¶
In order:
- The gift card's recipient in Shopify — set on the card itself, so it works for cards issued from the Shopify admin or a till.
- The gift card record in GiftCard Hero — the address the card was delivered to (email only; the record holds no phone number).
- The delivery schedule — for cards queued for a future send.
- The order's customer — the last resort, and the buyer rather than the holder on a card bought as a gift. For the phone number this also looks at the number typed at checkout.
The email and the phone number are looked up separately, each down this list, so they can come from different places — the email from the gift card, the number from the order — and the log says which.
If nothing yields an address or a number, that channel is logged as not sent. Assigning a recipient with a phone number to the card in Shopify fixes it for every future redemption of that card.
Notes¶
- Refunds, voids and failed payments are ignored — only a successful payment from a gift card sends anything.
- Test-mode orders never produce a customer message.
- A repeated event from Shopify does not send a second message; each redemption is notified about at most once per channel.
- These are transactional messages about a customer's own card, not marketing, so the marketing consent filter that applies to reminders does not apply here.
- GiftCard Hero has no SMS gateway of its own: if the SMS channel is on and the gateway has since been removed in Integrations, the text is logged as not sent and the email still goes.