Using returnProcess (the current Returns Processing API), I can’t find a way to issue a refund to a gift card. The input only seems to allow two outcomes:
input ReturnProcessRefundInput {
orderTransactions: [ReturnRefundOrderTransactionInput!]! # parentId is required — ties it to the original tender
refundMethods: [RefundMethodInput!] # only member is storeCreditRefund
}
So a refund either goes back through the original payment, or to store credit. No gift card option, same in 2025-07, 2026-01 and 2026-04
Use Case: A POS exchange on a cash order, where the customer received a gift card as the exchange item. We then need to refund one more line onto that same card.
What I have trie:
- returnProcess with orderTransactions: [ ] - creates a $0 refund record linked to the return. The line is marked refunded but no money moves, and the order is left showing the value as still owe
- returnProcess with the cash SALE as parentId - order balances, but records a cash refund that never happened
- refundCreate with gateway: “gift_card” - rejected without a parentId; with exchange-credit it succeeded but Shopify rewrote the gateway to cash
- giftCardCredit - puts money on the right card, but creates no refund, so the order still shows the amount owed
- An exchangeLineItems gift card variant with a fixed appliedDiscount - the line showed the discounted price, but the issued card was minted at the variant’s face value
Question: Is there a supported way to direct a refund to a specific existing gift card? If not, is a gift card member of RefundMethodInput planned, and what’s the recommended pattern in the meantime?