What I have done in the past relies on a few things.
We treat the Product return as a new purchase Item.
We then capture its name as a product- return. , Units, and $ amounts then apply. Our system then happened to then also need 2 transaction Ids. 1 for the originating one had to match. 1 For the new action of a credit in essence.
It has some challenges but we found it useful. We could then report at a transaction level or by the sum of return products.
regards