5/22/2026, 12:01:04 AM
Shopify introduces a new mutation giftCardProductSet that allows merchants to create or update gift card products via a single API call, automatically setting giftCard=true and applying gift‑card defaults. The mutation accepts a dedicated input type GiftCardProductSetInput, supporting fields for product metadata, tags, files, metafields, variants (using GiftCardProductVariantSetInput) and key gift‑card specific settings like issuanceCurrency and crossCurrencyRedeemable. A GiftCardProductSettings object and a giftCardSettings field are added to the Product type, exposing whether the card can be redeemed in other currencies and the issuance currency. New error codes such as LOCAL_CURRENCY_GIFT_CARD_PRICE_MUST_BE_ZERO are added to bulk variant mutation error enums, and additional error codes are defined for the giftCardProductSet mutation. The PaymentMandateResource type gains a non‑null id field to link mandates to customer payment methods. Variant publication webhook topics (VARIANT_PUBLICATIONS_CREATE, VARIANT_PUBLICATIONS_DELETE) are added. Minor documentation update: DiscountCombinesWith tags field description is clarified.
Creates or updates agift card
product. This mutation is specifically designed for gift card products and automatically sets
the giftCard field to true, applies gift card variant defaults (non-taxable, no shipping
required, inventory untracked), and omits fields that aren't relevant to gift cards.
For list fields likevariants,
the mutation performs a full replacement: it creates new entries, updates existing ones, and
removes any entries not included in the input. For all other fields, only included fields
change and omitted fields remain unchanged.
You can run the mutation synchronously to receive the updated product immediately, or
asynchronously by settingsynchronous: false
to receive aProductSetOperation
object instead. Use theproductOperation
query to check the status and retrieve the product details when running asynchronously.
Note:
TheissuanceCurrency
andcrossCurrencyRedeemablefields can only be set during product creation. They can't be changed after the product is created.
The input fields for creating or updating a gift card product with thegiftCardProductSet
mutation.
For list fields likevariants,
the mutation creates new entries, updates existing ones, and deletes any entries not included
in the input. All other fields update only when explicitly provided, leaving omitted fields
unchanged.
Return type for giftCardProductSet mutation.
Defines errors for GiftCardProductSet mutation.
Possible error codes that can be returned by GiftCardProductSetUserError.
The gift card configuration settings for aProduct,
including theissuanceCurrency
and whether the gift card can be redeemed across currencies viacrossCurrencyRedeemable.
Configure these settings when creating a gift card product with thegiftCardProductSet
mutation.
The input fields for specifying a gift card product variant to create or update with thegiftCardProductSet
mutation.
Include anid
to update an existing variant, or omit it to create a new one. Gift card variant defaults are
applied automatically, meaning variants are set to non-taxable, don't require shipping, and their inventory is untracked.
productDiscountsWithTagsOnSameCartLineidThe unique ID of the payment mandate. Matches the corresponding CustomerPaymentMethod.id token, so partners can identify which payment method to use for a given mandate scope (e.g., SUBSCRIPTIONS).
giftCardSettingsThe gift card settings for this product. Only available on gift card products.
LOCAL_CURRENCY_GIFT_CARD_PRICE_MUST_BE_ZEROLOCAL_CURRENCY_GIFT_CARD_PRICE_MUST_BE_ZEROVARIANT_PUBLICATIONS_CREATEVARIANT_PUBLICATIONS_DELETE