Skip to content

Wishlist

The wishlist lets a customer save products they’re interested in for later. Unlike the basket, items are not tied to a checkout session and persist across devices.

Wishlist mutations work for both authenticated and recognised users, so a returning customer can add to the same list without a full login. Availability is gated by the WISHLIST site feature.

Viewing the wishlist

customer.wishlist is paginated and sortable. Currency and shipping destination are required so that prices are surfaced correctly for the customer’s region.

query Wishlist {
customer {
wishlist(
sort: DEFAULT
offset: 0
limit: 20
currency: GBP
shippingDestination: GB
) {
total
hasMore
items {
product {
sku
title
url
images {
thumbnail
}
}
selectedVariant {
sku
title
inStock
availabilityMessage
price(currency: GBP, shippingDestination: GB) {
price {
amount
currency
displayValue
}
rrp {
amount
currency
displayValue
}
}
}
}
}
}
}

The WishlistSort enum supports DEFAULT, PRICE_LOWEST_TO_HIGHEST, TITLE, DISCOUNT_HIGHEST_TO_LOWEST and AVAILABILITY.

A wishlist can contain multiple entries for the same product as long as each entry has a different selected variant.

Adding a product

Pass the SKU of the variant the customer wants to save.

mutation AddToWishlist {
addProductToWishlist(sku: 10530421)
}

Removing a product

mutation RemoveFromWishlist {
removeProductFromWishlist(sku: 10530421)
}