← All posts

What happens to your customers' registry links when you switch apps

The links are on your domain, so it feels like they're yours. The middle of the path belongs to the app you're leaving. Here's what that means the day you uninstall, and how to make sure nobody notices.

We make Listify, a gift registry app, so we have an obvious interest in you feeling relaxed about switching to one. This article does the opposite for the first few hundred words, because the honest answer to the question in the title is yes.

Every registry link your customers already have stops working the day you uninstall your current registry app. Not some of them. All of them, at once, silently, and the app you're moving to has no way to prevent it.

That sounds much worse than it is, and by the end of this you'll know exactly why. But a migration guide that skips straight to reassurance is how stores end up with forty wedding guests hitting a 404 in the same week.

When a Shopify app needs to serve a page on your storefront, it uses an app proxy. You have seen the result without thinking about it: a URL on your own domain, with a path in the middle that has nothing to do with your theme.

The important part is who owns that path. The app does. It's declared in the app's own configuration, Shopify routes requests on that prefix to that app's servers, and the routing exists only while the app is installed on your store. Uninstall it and Shopify has nowhere to send those requests, so it does what it does with any unknown path on your storefront and returns a 404.

This isn't a bug in the app you're leaving, and it isn't something the app you're joining can patch around. No registry app on the platform can serve a URL registered to a different app. If one tells you your existing links will simply continue to resolve after you switch, they're describing something they haven't tested.

Take a link a customer emailed to their guest list. It has three parts.

Your domain, which is yours permanently and is the reason any of this is fixable at all. Then the app's proxy prefix, which is the part that evaporates. Then an identifier for the specific registry, which is a number or a code the old app assigned.

That third part matters more than it looks. When we bring your registries across, we keep the old app's identifier on each one rather than throwing it away and minting a fresh one. So after the move, a registry that was number 386932 in your old app is still findable by that number in ours. The identifier in every link your customers are holding is still a valid way to ask for that registry. Only the middle of the path is dead.

That's what makes the recovery a redirect rather than a reconstruction.

The fix, and its one real limitation

Shopify has a built-in URL redirects feature, under Online Store, then Navigation, then URL Redirects. It takes a CSV of from-and-to pairs and it runs at the platform level, so it works regardless of theme, app or anything else.

We generate that file for you from your migrated registries. Each row points one dead link at the same registry on your store's new path.

Shopify URL redirects have no wildcard support, and that's the limitation that shapes everything else. You can't write one rule that catches every registry link with a pattern. Every single registry needs its own row, so a store with four hundred registries needs four hundred rows.

That constraint is exactly why this is a generated file and not an afternoon of copying and pasting, and it's also why "we'll sort the links out afterwards" isn't a plan. The file has to be built from the migrated data, because only the migrated data knows which old identifier became which registry.

Printed invitations are fine

People assume this is the part that's lost, and it's the part that survives best.

Because the domain in the link is yours, a redirect fixes the link wherever it lives. It does not matter that you can't edit a printed wedding invitation, or an email sent in March, or a post on somebody's Instagram, or a QR code on a card that went out to two hundred people. None of those need to change. The link resolves through your store, your store consults its redirect table, and the guest lands on the registry.

The guest never learns anything happened. They don't see an interstitial, they aren't asked to search for the couple by name, and they don't have to be told to use a new address.

Registry links recover cleanly. Wishlist links do not, and it's a deliberate decision rather than something nobody got round to.

Registry identifiers from most older apps are short sequential numbers, which is fine, because a registry is a semi-public thing that people share deliberately. Wishlist identifiers in modern apps, including ours, are long random strings. That randomness isn't decoration: for a wishlist, the unguessable link is the privacy model. Nobody can find your wishlist unless you send it to them.

To make old wishlist links resolve, we would have to accept a short sequential number as a valid way to ask for a wishlist. The moment that works, anyone can walk the numbers upward and read every migrated wishlist on the store, one after another, by counting.

In practice this hurts less than it reads, because wishlists are shared far more casually than registries and are far more often re-shared from the customer's account rather than from a saved link. A registry link goes on an invitation. A wishlist link goes in a message.

The order to do this in

The sequence matters more than any individual step, because there's a window where the old links are dead and the redirects don't exist yet. Keeping that window at zero is the whole job.

  1. 1

    Migrate while the old app is still installed

    Your current app keeps serving every existing link throughout. Nothing your customers hold is affected while the registries are being brought across, which is why this order exists.

  2. 2

    Generate the redirect file from the migrated registries

    It can only be built after the import, because it maps each old identifier to the registry it became. Check that it targets your store's live registry path before you import it.

  3. 3

    Import the redirects into Shopify first

    Do this before the uninstall, not after. A redirect for a path the old app still owns is simply inactive, so importing early costs nothing and closes the window entirely.

  4. 4

    Then uninstall the old app

    The moment its proxy path stops being routed to it, your redirects take over. There's no interval where a link resolves to nothing.

  5. 5

    Test three real links before you tell anyone

    Take three registry links out of emails your store actually sent, ideally from different months, and open them in a private window. That's a two-minute check that catches a wrong path across the whole file.

Questions, answered honestly

Will my customers have to be told anything?
Not about links. The links they already hold resolve to the right registry once the redirects are in place. The one thing worth an email is that registry passwords don't transfer between apps, so anyone who set a password will need to set a new one.
How long do the redirects need to stay in place?
Indefinitely. They cost nothing to keep, and there's no way to know when the last person will click a link from an invitation sent two years ago. Treat them as permanent rather than as a migration artefact to tidy up later.
What if we already uninstalled the old app?
Then the links are dead right now, and the fix is the same: the redirect file still works, it just needs to be built and imported as quickly as possible. What you can't recover is the identifiers, if you no longer hold an export that contains them. Do not uninstall before you have the export.
Does this apply to links inside emails the old app sent?
Yes, and they're one of the biggest sources of saved links. Anything pointing at your domain is covered by a redirect, whoever generated it.
What about a registry a customer created but never shared?
It migrates like any other and is reachable from the customer's account, so there's nothing to redirect. The redirect file exists specifically for links that have already left your store.
Is there any registry app where this isn't a problem?
No. Any app serving pages on your domain does it through an app proxy, and any proxy path stops being routed when its app is uninstalled. The difference between apps isn't whether links break, it's whether anyone tells you before they do and whether they hand you the file that fixes it.

If you're working out the wider picture rather than this one question, the migration page covers what transfers and what does not, and moving from Gift Reggie specifically goes through the one migration where purchase history comes across intact.

Written by Listify. Last verified .