Showing results for 
Search instead for 
Did you mean: 

Internal error when trying to void transaction

I am using a sandbox/developer account to do some testing. Using the ruby API, I am trying to void a transaction. I don't think I have changed anything on my end from what I can tell that would be causing this. It was working yesterday. Is it possible that there is an outage on the dev server?


This was the response I got from calling void_transaction()

{:success=>false, :failure_step=>:void_transaction, :error_code=>3, :message=>"Internal error", :error_key=>:internal_error, :original_error_code=>nil, :original_message=>"An error occurred during processing.  Please try again.", :user_error=>false}

In addition, when I look at the transaction history for the said user profile that I have been testing with, it looks like the transaction is getting voided. 


I am currently facing a similar issue on the sandbox - voids and refunds are not working correctly. Even if I manually void a payment on the site, it says "Errored. An error occurred during processing. Please try again." But it still kind of appears to void it.


However, it doesn't send out void/refund webhook events which I'm trying to implement.

But my guess is there is something wrong on their end.

Hello @SambraveTheWise @zherbert


Are you using our SDK or the API?  Can you try the same transaction in the API Reference Try It tab and see if you get the same results?



I'm using the API. The same thing happens in the API Reference Try It tab.


    "transactionResponse": {
        "responseCode": "3",
        "authCode": "",
        "avsResultCode": "P",
        "cvvResultCode": "",
        "cavvResultCode": "",
        "transId": "40006126891",
        "refTransID": "40006126891",
        "transHash": "212F7B01B153A7C7AB03EFBD0F037200",
        "testRequest": "0",
        "accountNumber": "",
        "accountType": "MasterCard",
        "errors": [
                "errorCode": "21",
                "errorText": "An error occurred during processing.  Please try again."
        "transHashSha2": "70B1608E692C36B44D35A181979FC34957C609097E9117040F12BEA959A270EBCEA35AE59FC244A4DCA43E1F4B15DF6A0C746CBE355F3042B809D6AF9E761A78"
    "refId": "123456",
    "messages": {
        "resultCode": "Error",
        "message": [
                "code": "E00027",
                "text": "The transaction was unsuccessful."

@RichardHI am using the API found here (ruby) Try it now works with the default credentials. When I use my sandbox credentials I get an error saying the transaction cannot be found, which is different than what I am seeing when I am testing locally.

@zherbert That's what mine said at first too, but then I realized I needed to do a test charge first, and then use the transaction id from that test charge in order to properly test the void.

In that case, I am experiencing the same thing.

Hi all,


I can duplicate on my end by doing a simple authCaptureTransaction, then immediately voiding the transaction. I'll escalate this for investigation.


In the meantime, if you get an error response to a void, it's not causing any problems to try the void request again. In this case, you'll get a success response on the second request with a message attached that the transaction was already voided.


So, in case anyone's wondering how to handle an error on a void request: If it's not clear what the problem is, feel free to try it again.