To add to this, we have the exact same problem with issuing store credit in the form of a GiftCard.
I understand that the preferred way to do store credit returns would be to use Shopify native store credit via customer accounts. But, the reality is, many merchants do not use customer accounts or native store credit, and ask their returns apps to do store credit in the form of a Shopify GiftCard. This results in the exact same process of creating a return (with returnCreate), then processing the return (with returnProcess) and not including any financialTransfer (because it was handled separately by creating the gift card), which results in Shopify saying “You owe the customer a refund”, when in reality they do not because it was handled “outside” of the return.
Again, I know this problem is a result of us not doing things the “correct” way. However the main point of my post here is to call out that the “correct” way is simply not feasible to implement across most merchants today (i.e., using the exchange API for exchanges, and the store credit API for store credit), and returns app are generally also maintaining backup workflows (i.e., using draft orders for exchanges, and GiftCards for store credit), and this causes problems for merchants (specifically with Shopify saying “you owe the customer a refund” when they don’t).
Curious for your thoughts.