Skip to main content

Discount offers, giving your agent a discount it's allowed to use

How to give Arbyn a discount code it's allowed to offer in chat, called Discount offers in Sales Skills, which of your real Shopify discounts it can use, when, and how often.

Written by Joseph

A discount your agent can offer at the right moment is one of the most direct ways it earns its keep: a hesitating shopper, a cart that's been sitting for ten minutes, a first-time visitor who needs one small nudge. This page is where you decide which discounts your agent is allowed to reach for, and under what conditions.

What it does

Discount offers is the curated shelf of discounts your agent may use. It shows every discount that actually exists in your Shopify admin, kept in sync automatically, and lets you decide, per discount, whether the agent may mention it in chat, whether it appears in the widget's Perks panel, both, or neither. You can also create a brand new discount from here, and it's created as a real Shopify discount, not an Arbyn-only concept.

The important design decision: your Shopify discounts are the source of truth, and nothing here is offered by default. A discount that exists in Shopify shows up in this list, but stays invisible to customers until you deliberately switch a channel on for it. That's on purpose. Your store almost certainly has discount codes that were never meant for a support agent to hand out.

Where to find it

Sales → Discount offers.

Setup (step by step)

  1. Open Sales → Discount offers. Arbyn syncs your real Shopify discounts as the page loads, so the list you see is current, not a stale copy.

  2. To let the agent use a discount that already exists, find it in the list and set Show in to Chat, Perks, or Both. Off means the agent will never mention it.

  3. To create a new one, click Create discount offer and fill in the form described below.

  4. Set the conditions that decide when it's appropriate to offer, and how many times per conversation the agent may bring it up.

  5. Save. The change takes effect on the next conversation.

The fields, one by one

The discount itself

  • Type: Code or Automatic. A code discount is a code the customer enters, and the agent can say it out loud in chat. An automatic discount applies by itself at checkout with no code, so the agent mentions that it's already applied rather than reading out a code. This is locked once the discount exists, because it's a property of the real Shopify discount, not a preference.

  • Code. The code itself, for code discounts. Required for that type, and stored uppercase.

  • Label. An optional friendly name for your own reference, like "Welcome 10%". Handy once you have a dozen codes that all look alike in a list.

  • Percent off. Between 1 and 99.

  • Free shipping. A checkbox instead of a percentage. You need either a percentage or free shipping; a discount that does neither isn't a discount, so the form won't save one.

When it's valid

  • Start date and time. Leave blank to start immediately.

  • End date and time, or No end date. One of these is required. This is deliberate and it is the single most useful safety rail on this page: an open-ended discount code that a support agent can hand out is exactly the kind of thing that gets forgotten and quietly discounts your store for a year. If you genuinely want a permanent one, you have to say so explicitly.

  • End must be in the future, and after the start. The form checks both before saving.

Where it can appear

  • Show in: Off, Perks, Chat, or Both. Off is the default for anything synced from Shopify. Chat lets the agent bring it up in conversation. Perks puts it in the widget's Perks panel where shoppers can find it themselves.

Conditions, deciding when it's appropriate

These four conditions all default to "no condition", meaning the agent may offer whenever it judges the moment right. Add any of them to narrow that down:

  • Minimum cart value. Only offer once the shopper's cart is worth at least this much. The ordinary way to avoid discounting a small order.

  • Customer status. Restrict to new customers, returning customers, or anyone.

  • Cart abandoned for. Only offer once the cart has sat untouched for this many seconds, so the discount reads as help for someone hesitating rather than a reflex.

  • Cart contains product. Only offer when a specific product is in the cart.

How often

  • Max offers per conversation. Between 1 and 5. How many times the agent may bring this particular discount up in a single conversation. Default is 1, which is usually right: a discount mentioned three times stops sounding like a favour.

  • Priority, 0 to 999. When both a discount offer and a bundle could apply at the same moment, the higher priority wins. Ties break in favour of whichever was updated most recently. This is the same 0 to 999 scale used by bundles, proactive triggers, and escalation rules, so "higher wins" means the same thing everywhere in Arbyn.

How it works

Every discount here mirrors a real Shopify discount. When you open the page, Arbyn reads your store's discounts and updates its list, so a discount you created, edited, expired or deleted in Shopify is reflected here without you doing anything. Each row shows Shopify's own status: Active, Scheduled, Expired, Deleted, or Unknown if Shopify didn't report one.

Validity comes from Shopify, never from a switch here. This matters, because it's the difference between an agent that's honest and one that isn't. If a code expired in Shopify this morning, the agent will not offer it this afternoon, even if the row here still says it's enabled for chat. The same is true if a discount hit its usage limit. Arbyn checks the real state before it offers anything, so the agent can never promise a customer a code that won't work at checkout.

Creating from here creates a real Shopify discount. When you fill in the create form, Arbyn creates the discount in your Shopify admin using your inputs, then records the link between the two so future syncs keep them together. It appears in your Shopify Discounts list like any other, and you can edit it there if you prefer.

Nothing is offered by default. A discount that arrives through the sync starts with every channel off. You have to turn one on. This is the deliberate opposite of the usual convention, because the risk of the agent finding a wholesale code and offering it to a retail shopper is far worse than the inconvenience of an extra click.

The agent decides the moment; you decide the boundaries. Within everything you've set here, whether to actually offer a discount in a given conversation is the agent's judgement, based on what the shopper has said and done. It doesn't fire a discount at everyone who says hello just because one is enabled.

Good to know

  • Deleting a discount offer here does not delete it in Shopify by itself. Manage the underlying discount in your Shopify admin if you want it gone from your store entirely.

  • Expired and deleted discounts stay in the list. They're shown with their real status rather than vanishing, so you can see what happened to a code a customer is asking about.

  • An automatic discount never has a code to read out. The agent tells the shopper the saving is applied at checkout instead. Nothing is broken if there's no code box for these.

  • Usage limits are respected. If your Shopify discount has a total usage limit and it's been reached, the agent stops offering it.

  • Priority is shared with bundles. Both use the same 0 to 999 scale, and the higher one wins when they collide. There's a separate article on how Arbyn picks between competing offers.

  • A discount enabled for Perks but not Chat is browsable, not offered. Shoppers can find it in the widget's Perks panel; the agent won't volunteer it in conversation.

FAQ

Do I have to create discounts here, or can I use the ones I already have? Use the ones you already have. Every Shopify discount syncs into this list automatically. All you do is decide which of them the agent may use.

Why is a discount showing here that I never wanted the agent to touch? Because it exists in your Shopify store, and this page lists everything so nothing is hidden from you. It won't be offered to anyone: everything arrives with all channels off, and it stays that way until you switch one on.

What happens if a code expires while a customer is mid-conversation? The agent checks the discount's real state at the moment it would offer it, so it simply won't offer an expired code. It won't retract one it already gave, which is why a sensible end date matters more than a tight one.

Can the agent invent a discount, or change the percentage? No. It can only offer discounts that exist in your Shopify store and that you've enabled here, at exactly the value they're set to.

Why must I set an end date? Because an open-ended discount that an automated agent can hand out is the one that gets forgotten. You can still choose No end date deliberately, but you have to choose it rather than leave the field empty.

Both a bundle and a discount could apply. Which one does the customer get? The one with the higher priority number, and if they're equal, whichever was updated most recently.

When shoppers ask for a discount you already have, switched off

Arbyn can email you when shoppers keep asking for a discount and it has nothing it can offer them in chat, even though your store does have offers configured. The email is called "Shoppers asking for a discount", and it exists for one specific situation: the discount is real, it is set up, and its Show in setting simply does not include Chat, so Arbyn is not allowed to mention it.

It only sends when all of these are true, because a nudge that fires on a single shopper is noise:

  • Several shoppers asked for a discount recently, not one.

  • Arbyn actually looked and found nothing it could offer in chat.

  • You have at least one real offer that is switched off for chat.

It waits before sending again, and the count only resets once an email has genuinely gone out. It is off by default and you can turn it off permanently in Settings, under notification preferences.

Switching Show in to Chat or Both does not change the discount itself. Same code, same percent off, same Shopify rules. It only lets Arbyn mention it when a shopper asks. If you would rather keep discounts out of chat entirely, that is a perfectly valid setup and no action is needed.

Why doesn't Arbyn just offer the discount anyway? Because Show in is your decision, not a suggestion. A discount you deliberately kept out of chat staying out of chat is the setting working. The email tells you shoppers are asking, and leaves the choice with you.

Did this answer your question?