We use a third-party service (Maxio) to process recurring subscription transactions for our business. They in turn send our requests to Clover for processing. Our custom in-house application is used to process refunds by sending the transaction and amount information to Maxio, who then sends that information to Clover.
Our app has not changed and has worked fine for processing refunds previously.
Today we had a case where a customer was due a refund for a charge that was transacted yesterday successfully. When our app initiated a refund (through Maxio's API), Maxio returned an error "422 Unprocessable Entity". I contacted Maxio who said that this information comes back from Clover and they just pass it along to us.
I tried several times over the course of 15 minutes to process this refund with the same 422 result.
I then tried to process a refund for the same customer for a previous charge they had 3 months ago to the same card (using our same application). That transaction was refunded properly for the same amount to the same card. The only difference was the transaction ID we had for the Maxio database (I don't know how or if their transaction ID correlates to the Clover database).
Is there any type of minimum time required after a successful charge transaction occurs before a refund can be issued?
I'm a little concerned because we were just converted from Payeez to Clover, and the charge that could not be refunded occurred after the conversion, but the transaction that was successfully refunded occurred before the conversion. This was also the first time we've run a refund against a charge that occurred after the conversion to Clover. So my concern is -- was this error related to something that needs to be done differently to refund a transaction that occurred under the Clover system vs the old Payeez system, or is it just a coincidence that it worked for an older transaction but not the newer one?
Thanks for any light you can shed on this issue and my concerns.