Gift Card Out of stock rejection at checkout

Topic summary

Gift cards are being incorrectly rejected at checkout with an “Out of Stock” error message, despite not having inventory tracking enabled.

Troubleshooting attempts (unsuccessful):

  • Reviewing theme and cart liquid files for checkout routines
  • Checking product settings and gift card configurations
  • Creating new gift cards with default settings (same issue persists)
  • Reviewing checkout settings for potential toggles

Identified cause:
The issue appears when variants are manually added to gift card products through the “Products” section instead of using the proper “Gift Cards > Add a Gift Card” workflow.

Working solution:

  • Rename the problematic gift card product to “- OLD” and set status to “Draft” (preserves functionality for customers who previously purchased)
  • Create a new gift card product through the correct workflow with all desired denominations
  • The newly created product no longer triggers the out-of-stock error at checkout

Note: Shopify documentation doesn’t provide a clear method to update existing gift card products with additional variants, making recreation the most reliable fix.

Summarized with AI on November 14. AI used: claude-sonnet-4-5-20250929.

Hey, I just went through the same issue. I think it is because I manually added a Variant to the “Gift Card” product via “Products”, rather than going through the “Gift Card> Add a Gift Card” method. After I did this, my gift card product started showing the out of stock.

I looked through shopify docs but was unable to find a way to actually update an existing product to add more variants:

https://help.shopify.com/en/manual/products/gift-card-products/add-update-gift-card-products

While it says “update” is an option, I was unable to do so.

To resolve the issue on my end, I recreated the gift card product with all the “Denominations” I previously had, plus the additions I was looking to make in the first place. I tested this out and it no longer has the Out Of Stock issue at checkout.

I then moved the old one to “Draft” status and renamed it with an “- OLD” at the end of the name. Not sure if this is necessary but instead of deleting the product entirely, I wanted to ensure that the customers who bought these would still be able to use it.