Vendure Wishlist Plugin
Vendure Wishlist Plugin
Vendure Wishlist Plugin
Vendure Wishlist Plugin
Vendure Wishlist Plugin
Vendure Wishlist Plugin

Vendure Wishlist Plugin

Comprehensive wishlists: guest wishlists, multiple lists, private/public lists, sharing & purchase tracking

Annual License
  • Updates and support
  • Get updates 30 days before release
  • Access to source code
€480.00 / year
Billed annually upfront
Monthly License
  • Updates and support
  • Get updates 30 days before release
  • Access to source code
€50.00 / month

Join the Waitlist

Be the first to know when the new marketplace is available. We'll send you an email as soon as it launches.

Latest version1.0.2
Compatibility^2.0.0||^3.0.0
Last publishedJul 18, 2024
Vendure GmbH

This plugin implements an advanced wishlist solution for your storefront

Features

  • Guest wishlists
  • Multiple wishlists
  • Wishlist names & descriptions
  • Public & private wishlists
  • Track purchases from a public wishlist
  • Move items between wishlists

Setup

After installing, add the plugin to your VendureConfig:

This plugin defines two new entities & two customFields on the OrderLine entity, so a migration will be required.

GraphQL Extensions

This plugin extends the Shop API with the following schema:

Storefront Guide

Add to Wishlist

In your storefront, execute the mutation addToWishlist, passing the id ProductVariant.

If the Customer is not signed in, a new anonymous Wishlist will be created and associated with the current Session. If signed, in a new default Wishlist will be created and associated with that Customer.

If a Customer has an anonymous Wishlist and then signs in, the contents of that anonymous Wishlist will get transferred over to the Customer account. If there already exists a Wishlist associated with the Customer account, the contents of the anonymous wishlist will get merged into it.

Display whether ProductVariant is in Wishlist

On your product detail page, you can then display the fact that a given ProductVariant is in a Wishlist by querying the new appearsInWishlists field on the ProductVariant type:

Managing multiple Wishlists

Multiple wishlists may only be created for signed-in Customers. Anonymous customers are limited to the single anonymous Wishlist.

The first Wishlist that gets automatically created for a Customer is known as the "default" Wishlist. This is the Wishlist that will be used when executing addToWishlist without specifying a Wishlist id.

An unlimited number of additional Wishlists may be created by the Customer by using the createWishlist mutation. Then you can manage these Wishlists using the mutations updateWishlist & deleteWishlist, and you can move items between Wishlists with moveWishlistItems.

Public Wishlists

A signed-in Customer's Wishlist can be set to "public", which means it will become accessible publicly by querying publicWishlist and passing the publicCode of the public Wishlist. This can be used, for example, to share a Christmas gift list with friends.

To add an item from a public Wishlist to an order, use the addWishlistItemsToOrder mutation, passing the id of the WishlistItem. Doing so will populate the addedFromWishlistCustomerName and addedFromWishlistName customFields on the resulting OrderLine. This can then be used to display in your Order listing that this line was added from someone's public Wishlist:

To indicate whether items on the public Wishlist were purchased by someone (e.g. to prevent people from buying the same gift), use the WishlistItem.lastPurchasedAt field.