TL;DR — A merchant can’t void or refund a single leg of a grouped sale through the API. Void the whole group via support; refund only the payment leg yourself.
When this happens
- You tried to void just the payment leg (or just the loyalty leg) of a grouped sale —
409 urn:radiumone:transaction:single-leg-void-forbidden. A merchant can’t void one leg of a group; whole-group void is support/admin-only. - You tried to refund the loyalty leg directly —
422 urn:radiumone:transaction:product-not-supported. Points aren’t returned through the API.
What you see
What to do
1
Void the whole group, not one leg
A merchant can’t self-void a single leg of a grouped sale. To cancel a redeemed sale before its batch closes, contact support with the
group_id from your records — see Refunds and cancellations: cancelling a redeemed sale.2
Refund the payment leg, not the loyalty leg
Once the batch has closed, refund the card residual through the payment leg’s own transaction (API reference):The loyalty leg itself can’t be refunded through the API — support handles points returns.
3
Treat a full-redemption return as a support case
If the sale had no payment leg at all (a full-redemption, loyalty-only sale), there’s nothing to refund through the API — contact support.
Related
Refunds and cancellations
The full can/can’t table for grouped sales.
Pay with points
Where
group_id and the loyalty block come from.Payment method errors
The full URN catalog for loyalty errors.