Home Changelog

Changelog

Every release of Inner Circle, newest first: what changed on your store, in plain language.

Something you were hoping for isn't here? Tell us.

1.2.0

9 September 2026

Latest

Added

  • A Members screen, and a way to remove one person. Under Access there is now a list of everyone who can currently get in — how they got there, what tier they hold, when they were last on your store and when their access runs out — with a search box for finding one of them. Each row has a Remove access button, which is the thing the app had no way to do: until now, cutting one person off meant switching off the whole code they came in on, which took everyone else who used it with them. Removing somebody closes the storefront for them, stops them at checkout, and takes back any invites they had not handed out yet. Every plan.

Fixed

  • Access you have taken away now stops at checkout, within a day. A member whose access had run out, or whose code you had switched off, could still buy gated products indefinitely: the storefront closed to them the moment it happened, and checkout carried on letting the sale through.
  • Deleting an access code no longer widens the access it granted. A code scoped to one collection would, on being deleted, hand everyone who had ever used it the run of the whole store — the opposite of what deleting a code looks like it does, and invisible from the admin. A code's scope now travels with each person's access at the moment they use it, so deleting the code changes nothing about what the people who came in through it can already open. Disabling a code is still how you shut a whole code's access off, and the Members screen is now how you remove one person.

1.1.0

20 August 2026

Added

  • The emails can look like your shop. Your logo, your brand and button colour, one of four typefaces that survive an inbox, a real footer with your address, and a light or dark set. One set of choices covers all six emails, including the ones you have already rewritten. Email is its own section now, with a live preview beside the words as you write them and a test send so you can read the real thing in your own inbox first.
  • Member invites. The people already inside can bring in the people who should be. Members hold a small, fixed number of single-use invites, send the link themselves rather than having your store email a stranger, and every arrival is credited to whoever invited them. Revoke one, or stop a member issuing any more, from the Invites screen. Each tier can be given its own number, and a member who holds several gets the most generous of them. Growth.
  • The Emails list says what each one is doing. How many each template sent and how many failed over the last thirty days, with a badge on the failures, so a template quietly failing on a customer's request is visible where you go to write the words, instead of only in a customer's complaint. The counts start from the history the app already had rather than from today. Sends, not opens: nothing tracks whether anybody read it.
  • A screen for your creators. Adding, renaming, retiring and deleting a creator now happen in one place, alongside their link and their numbers over a period you choose. Before this, a creator's link, their codes and their results were on three different pages. Retiring keeps everything they brought in and switches their link off; deleting is the destructive one, and the screen tells you which it is about to do. Growth.
  • A locked product can no longer be bought by someone without access. Hiding the price and taking the buy button away both happen in the shopper's browser, so anyone with a direct cart link could skip the product page and check out anyway. Shopify now checks access at the checkout itself, and the sale stops even when the page never loaded. Three things worth knowing: it stops the purchase rather than the add to cart; it follows the lock's own "gate the buy button" setting, so a lock meant only to hide prices leaves buying open; and locks that name their products or cover the whole store are enforced, while locks pointed at a collection or at conditions like a tag or a vendor are not yet. Someone who enters a valid access code can buy without making an account. Nothing to switch on — stores already installed start enforcing the next time they open the app.
  • A lock can cover products by rule rather than by list. "Tag is equal to vip", "vendor contains Acme", "title starts with Sample" — as many conditions as you like, matched all together or any one of them, in the same shape as the conditions on Shopify's own automated collections. Locks you already set up keep working, and open as the conditions they always meant.
  • Exceptions can say what they are. A lock can spare specific products, whole collections and individual pages at the same time, each chosen by name, so "the whole store except the lookbook and these two products" is one lock rather than three at different priorities. Locks with older exceptions keep them.
  • See a locked page before you save it. The lock editor draws what a locked-out visitor sees beside the settings that decide it, and redraws as you change them. It follows what is on screen rather than what is saved, so you can look at a change before committing to it. It is a sketch rather than your theme, which it says underneath.
  • Pause a paid plan for a month, once a year. Billing stops straight away and your storefront carries on exactly as it was — locks stay locked, tiers still rank, drop dates still count down — so your customers notice nothing. Nothing new can be created while it lasts, and it ends on its own if nobody comes back.
  • Moving down a plan says what it will cost first, in your own numbers: which tiers stop applying, how many people are in the waitlist queue, how many invite links stop working. It is as clear about what is kept, because a downgrade deletes almost none of it, and it offers the pause to anyone about to leave over a month they didn't need.
  • The people you capture can go to your own Klaviyo. Connect your Klaviyo account and they land in a list there, each tagged with where they came from: a request, an interest list, the waitlist, or a member already inside. Only people who ticked the marketing box on your request form are ever sent — an address somebody gave you to get into your shop is not permission to market to them — and if the connection breaks, requests carry on being taken exactly as before. Growth.
  • An API your own systems can read. Create a named credential under Settings → API and your server, your ERP or your agency's middleware can ask whether a customer is unlocked, and read back everyone you have let in and everyone who has asked. The answers come from the same code that decides it on your storefront, so the two can never disagree. It is read-only, it only ever sees your own shop, and it never hands back a code somebody could redeem. Growth.
  • Your theme can ask whether this visitor is in. Put data-ic-show="unlocked" — or locked, member, guest, or tier:Gold — on any markup in your theme and it shows only to the right visitor, with no flash of the wrong version and no JavaScript to write, plus a documented JavaScript API for anything more involved. On every plan, including Free.

Changed

  • Writing an email no longer means writing HTML. Bold, links, headings, lists and a call-to-action button, in an editor that offers what survives an inbox rather than everything an editor could. All six emails were rewritten at the same time: the approval email says what being let in gets you and states when the code expires, the received email promises a real window instead of "shortly", and the drop announcement stops greeting people by their email address.
  • You can see what a plan gets you before you run into it. A badge naming the plan that unlocks a feature sits beside the feature itself and links straight to the plans page. Controls that used to be hidden outright keep their label and a line explaining what they do.
  • The admin is faster, most noticeably on the first load of the day. The app now runs in the same place as its database instead of crossing the Atlantic for every query.
  • "Products with tags", "Products from vendors" and "Product types" are no longer offered when you build a lock. Everything they did is in the new conditions builder and more besides, since a condition can also ask contains, starts with or is not. Locks already using them are untouched and keep gating exactly as before; opening one shows it as the conditions it always meant, and it converts only if you save.
  • Choosing what a lock covers no longer means finding an ID. Start typing and the editor searches your own products, collections or pages by name, and shows what you have picked as removable chips. Locks set up the old way display their names now too, rather than the numbers they were built from.
  • The locks list leads with the lock's name rather than its priority number, and each row's actions — edit, pause, archive — moved into a menu at the end of the row instead of sitting in the table as a row of buttons. Bulk selection is unchanged.
  • Saving works the same way everywhere now. Change anything on any editing screen and Shopify's save bar appears at the top of the admin, with Save also at the foot of the page, and leaving with changes pending warns you first. On Tiers, Auto-approve and Creators, editing a row no longer writes it the moment you finish typing — your changes wait for Save like everywhere else, marked "Unsaved" until they land, and Discard puts them all back. Buttons that do something rather than change something — delete, archive, retire, turn on or off, move up or down — still take effect the moment you press them.
  • Every screen now ends with a line pointing at the guide for whatever you were doing — hiding prices under Locks, influencer campaigns under Creators, wholesale tiers under Tiers. They open on this site in a new tab, so nothing you were part-way through is lost.

Fixed

  • Every email with a button had a broken one. The unlock link was being substituted into the link tag itself rather than the text around it, so the button went nowhere, in every template that had one, including the email carrying somebody their access code.
  • Schedules and tiers are now enforced on your storefront, not only in the admin. A shop could previously set up a timed drop and a tier ladder on Growth, cancel, and keep both running. Both now fail towards keeping things shut, and your dates and tiers are kept, so moving back up resumes them. Locks themselves are never switched off by a plan change.
  • Two dialogs could open on top of each other. A shopper who arrived at a code link and then a request link saw both, stacked, each one claiming to be the only thing on the page. Opening one now closes the other.
  • Erasing a shopper now clears them from member invites too. An invite they sent keeps counting towards your totals and stays on the Invites screen, with their name and email address taken off it. Invites made after somebody was erased start from a fresh allowance, because there is no longer any way to tell it is the same person, which is the point.
  • The three switches on a lock now save. Gating the buy button, and showing the "Enter access code" and "Request access" buttons, were every one of them being stored as off whatever you ticked — so buy-button gating could not be switched on at all. Saving a lock also no longer leaves an "Unsaved changes" bar stuck on screen with nothing behind it.
  • A request with a required question left blank could show the shopper a line of developer jargon instead of telling them which answer was missing. The form now names the question it is waiting for.
  • Two reports that simply weren't there on a lower plan now say so and link to the plans page. "Where requests come from" and "Brought in by members" used to vanish entirely rather than explain themselves, so there was no way to learn they existed. The "Minimum tier" panel in the lock editor also stops telling merchants without access tiers that they haven't set any up, and names the plan the feature comes with instead of sending them to a screen that would refuse them.
  • Reports and Emails looked like a different app to the rest of the admin: their tables sat on the page rather than in a card, which cost them the rounded corners and the header styling every other table has. Both are now built the same way as the Locks list, and Email delivery joins the save bar.

1.0.0

10 August 2026

The first release, live on the Shopify App Store. Everything the app shipped with is on the features page. A changelog is a record of what changed, and on a first release nothing has. The itemised format starts at 1.1.0.

Keeping up

Updates reach your store on their own. There is nothing to install and no version to choose. Anything that would change how your existing locks behave gets an email before it ships, not after.

To hear about the rest without coming back to look, subscribe to the feed.