# Shopify gift cards and digital products in a feed

Gift cards, downloads, subscriptions and services are active, purchasable Shopify products that mostly do not belong in a shopping feed. The flags that identify them are the requires-shipping setting and gift card status, and neither is checked by a generator that maps fields rather than decisions.

- **Canonical URL:** https://www.feedlab.io/knowledge/mappings/shopify-gift-cards-and-digital-products
- **Last reviewed:** 18 September 2026
- **Source:** feedlab knowledge base
- **Licence:** free to quote and cite with attribution to feedlab


## The Shopify side

| Property | Value |
| --- | --- |
| API field | `variant.requires_shipping + product.is_gift_card` |
| Called | This is a physical product, and gift card status |
| Found at | Product → Variants → edit variant → Shipping, and the gift card product type in Products → Gift cards |
| Feeds | `availability` |


## Before and after

| In Shopify | In the feed | Note |
| --- | --- | --- |
| `gift card product` | `(excluded)` | Identified by its gift card flag rather than by its title. |
| `digital download, requires_shipping false` | `(excluded by default)` | Included only for a channel that accepts digital goods. |
| `subscription box, 29.00/month` | `(excluded)` | A recurring price is not a product price. |
| `service, requires_shipping false` | `(excluded)` | Not a product a shopping channel can represent. |
| `ebook on an accepting channel` | `included, shipping attributes omitted` | Zero weight would be a claim about a physical item. |



## The transformation, step by step

1. **Exclude gift cards explicitly** — Shopify marks gift card products distinctly, and they should be excluded by that flag rather than by a title match. A gift card has a price, an image and stock, so nothing else about it signals that it is unsuitable.
2. **Treat requires_shipping as a signal, not a verdict** — A variant that does not require shipping is a download, a service, a subscription or a gift card. Most of those do not belong in a shopping feed, but some channels do accept digital goods, so the flag identifies the decision rather than making it.
3. **Handle subscription products deliberately** — A subscription is a recurring commitment with a price that means something different from a one-off purchase. Feeding it at its per-delivery price misrepresents what a shopper is buying, and it is the kind of mismatch that reaches a complaint rather than an error report.
4. **Omit shipping attributes for what you do include** — Where you do feed a digital product to a channel that accepts it, omit shipping weight and dimensions rather than sending zeros, since zero is a claim about a physical item.
5. **Make the exclusion visible** — Drive it from a rule someone can read in the admin, such as a tag or the flag itself, rather than a list of product ids in a feed configuration. Excluded products are the hardest thing to debug in a feed, because there is nothing to look at.



## What goes wrong

### Gift cards look exactly like products

They are active, published, priced, imaged and in stock. Every heuristic a generator might use says include, which is why they turn up in so many feeds, and why the exclusion has to be explicit.

### Excluding by title is fragile

Filtering on the word "gift" removes gift sets, gift wrap and gift boxes, which are real products, and misses a gift card called "e-voucher". The flag exists; the title is a guess.

### Subscription prices misrepresent the purchase

A monthly price in a shopping result reads as a one-off price. The shopper arrives expecting to pay once, which is both a poor experience and a genuine mismatch between the listing and the offer.

### Zero weight is a claim, not a blank

Sending zero for a digital item asserts a weightless physical product, which is different from omitting the attribute. It also makes zero-weight physical products, which are usually missing data, impossible to find.




## How feedlab maps it

feedlab excludes gift cards by their Shopify flag and non-shipping variants by default, with an explicit per-channel override for channels that accept digital goods, and omits shipping attributes instead of sending zeros on anything included. Exclusions are rules rather than lists, so the preview can show what each one removed.






## Frequently asked questions

### Should gift cards be in a product feed?

No. They are not physical products and generally breach channel policy, but they look like ordinary products in every respect, so they have to be excluded by their gift card flag explicitly.

### How do I identify digital products in Shopify?

By the requires-shipping setting on the variant. A variant that does not require shipping is a download, service, subscription or gift card, which is the signal for a deliberate decision rather than an automatic exclusion.

### Can I advertise a subscription product through a feed?

Generally not in a shopping feed, because a recurring price shown as a product price misrepresents the purchase. Some channels have dedicated handling for subscriptions instead.

### What weight should a digital product have in a feed?

None at all. Omit the shipping attributes rather than sending zero, which asserts a weightless physical product and hides genuinely missing weights elsewhere.




## Primary sources

- [Shopify: ProductVariant API reference](https://shopify.dev/docs/api/admin-graphql/latest/objects/ProductVariant)
- [Google: Product data specification](https://support.google.com/merchants/answer/7052112)



