cancel
Showing results for 
Search instead for 
Did you mean: 

Partial Refund on Transaction that is not settled presents no error

Hello,

 

I am trying to create a partial refund solution that will determine whether a transaction has settled by first attempting to perform a partial refund, which should return the error code 50 if the transaction has not been settled.

 

	{
		"code" : "50",
		"text" : "This transaction is awaiting settlement and cannot be refunded.",
		"integration_suggestions" : "", 
		"other_suggestions" : "Credits or refunds may only be performed against settled transactions. The transaction against which the credit/refund was submitted has not been settled, so a credit cannot be issued."
	},

 

For a partial refund on a transaction that has not settled, I am not getting this error in the sandbox environment. Instead the partial refund is being appended to the batch that the original transaction is in. I had the understanding that this could not happen.

 

Does error 50 only happen in a production environment, or should I expect production to behave the same as the sandbox?

 

Thanks in advance.

nccqp
Member
1 ACCEPTED SOLUTION

Accepted Solutions

Richard,

 

After futher debugging, I discovered that I was sending the refund as a "authCaptureTransaction". After I changed it to "refundTransaction" it worked just fine.

 

Silly mistake on my part, sorry about that. Thanks for your time!

View solution in original post

4 REPLIES 4

Hello @nccqp

 

An unsettled transaction can only be voided which cancels the entire transaction.   If you wait until after settlement has occured, you can refund a portion of the transaction up to the original amount.

 

Richard

RichardH
Administrator Administrator
Administrator

Hello Richard,

 

 

Thanks for the reply.

 

The issue is that the sandbox is allowing a partial refund for a transaction in a batch that is unsettled.

 

My understanding was that the Authorize.net platform would not allow this to happen and would throw an error on an attempt to do so. I was wanting to use the condition of whether the error is thrown or not to determine whether to do a void or not.

 

Thank you

@nccqp

 

Can you please provide a sample transaction request and response to duplicate the issue in the sandbox?

 

Richard

Richard,

 

After futher debugging, I discovered that I was sending the refund as a "authCaptureTransaction". After I changed it to "refundTransaction" it worked just fine.

 

Silly mistake on my part, sorry about that. Thanks for your time!