Wishlists

Wishlists let shoppers save products they want, come back to them later, and share a list so friends and family can buy from it.

Shoppers can keep one list or several, say how many of something they want, leave a note on an item (a size or a color), and share a list with a link. An automation can also email them when a saved item drops in price or comes back in stock.

Turn wishlists on

  1. Open Settings → Features → Wishlists and choose whether a shopper keeps one list or several, and whether lists can be shared (with or without prices). Wishlists work as soon as the button is on your store, so the defaults are fine to start with.

  2. Add the Add to wishlist button to your product pages and the Wishlists block to an account page. On Shopify, see Widgets in your theme. Elsewhere, see Storefront widgets. The Add to wishlist button beside Add to cart on a product page

  3. Save a product on your own store to check it works, then open Wishlists to see it in the dashboard.

The Wishlists page listing every saved list with its owner, item count and sharing state

One-click saves

Clicking the save button puts the product on the shopper's main list. A first-time saver doesn't have to name anything: Meisei creates the list for them, using Name for a customer's first list under Settings → Features → Wishlists ("My wishlist" out of the box). Changing that name only affects lists created afterward.

Clicking again removes the product. The arrow beside the button lets a shopper pick a different list, and Make default in their list manager changes where one-click saves go.

A shopper's list on their account page, with the products they saved

One list, or several

Several lists per customer under Settings → Features → Wishlists decides whether shoppers can create more than one list. One list is simpler and right for most stores. Several is worth it when people shop for others, so a registry can sit beside a wish list.

The Wishlists settings page with its lists, sharing and alerts settings

A shopper who hasn't saved anything yet sees one empty list, under the name from the same section, so their account page looks the same on their first visit as it does afterward. Meisei doesn't create the list until they save something, rename it or share it, and it doesn't show up in your dashboard until then.

Turning the setting off later doesn't take away lists shoppers already have. They can still see and use all of them, but can't create another.

Before a shopper signs in

Shoppers who aren't signed in can still save. Their lists live in their browser until they sign in, and then move onto their account. If you allow one list per customer, Meisei asks before merging their saves into it. Sharing, alerts and purchase marking wait until they sign in.

Sharing

Every list is private until its owner shares it. Shoppers turn sharing on from their list manager and copy the link, and can replace the link at any time if they shared it with the wrong person.

The settings that matter, all under Settings → Features → Wishlists:

  • Allow shared wishlists is the store-wide switch. Turn it off and every share link stops working at once; turn it back on and they come back as shoppers left them.
  • Show prices on shared lists decides whether gift buyers see prices on the shared page.
  • Let visitors mark items as purchased lets anyone with the link mark an item as bought, so two people don't buy the same present.
  • Let shoppers add a photo to a saved item lets a signed-in shopper put their own photo on something they saved, shown in place of the product image on their list and the shared page. Turning it off hides the photos without deleting them, and you can still see them on the list in the dashboard.
  • Show shared lists on a page of your own site makes share links open a page on your store instead of the page Meisei hosts. Empty by default. See Showing shared lists on your own site.

See Sharing and gift purchases for how the shared page works and who can see what.

Alerts

Price drop and back in stock emails come from an automation. Add it and you edit the two emails on its page. See Wishlist alerts to set it up.

In the dashboard

Wishlists lists every saved list. Filter it, sort it, and export what you're looking at. Click a list to open it on its own page: its items and what has been bought on the left, who owns it, its share link and your notes on the right. Wishlists at the top of the page takes you back, with your search and filters as you left them.

A wishlist opened in the dashboard, showing its owner, share link, items and purchases

The list's name and items belong to the shopper, so you change them from the storefront or with an import, not by hand. From its page you can copy its share link, remove a photo the shopper added, and keep your own notes on it.

Next steps

For developers

The three wishlist embeds (data-meisei-add-to-wishlist, data-meisei-wishlists, data-meisei-wishlists-modal) and the customer attributes they need are documented in Installing the widgets. A few more details:

  • data-meisei-wishlists-modal opens the lists in a sheet from the right edge of the page. data-meisei-wishlists-modal-label changes its button label.
  • The value of data-meisei-add-to-wishlist is the product slug. On Shopify that is the product handle: <div data-meisei-add-to-wishlist="{{ product.handle }}"></div>. The widget works for guests, so don't wrap it in {% if customer %}.
  • Guest saves keep a display snapshot of the product in localStorage. Supply it with data-meisei-product-title, data-meisei-product-image, data-meisei-product-price and data-meisei-product-url on the save button. The snapshot is captured at save time and not updated.
  • When the customer attributes appear, the widget claims browser lists through POST /widgets/wishlists/claim and clears the browser copy. With several lists allowed, each browser list becomes a wishlist (a clashing name gets a numbered suffix); with one list, the shopper is asked first and items are merged into it. The claim is all-or-nothing: on any failure the browser copy is kept.
  • Widgets read multipleWishlists on every widget API wishlist response.
  • Gift purchases from your own systems: POST /wishlists/{id}/items/{itemId}/purchases records one (hidden from the list's owner), GET reads the full picture, DELETE clears every purchase on the item. Changes are written to the audit trail.
  • shareToken and shareUrl are on the API wishlist response and are deliberately left out of exports.
  • Availability for back-in-stock alerts can be set on a product import with an available column (true/false) on the variant row. An absent column or empty cell keeps the stored value.