cancel
Showing results for 
Search instead for 
Did you mean: 

Underlying connection was closed: an unexpected error occurred on a send.

Badly in need of help. Backstory: I'm a week or so out from replacing an old system someone cobbled together for my client using VB. Files on the server are compiled, and I'm also not very familiar with VB. I can't wait to take the thing out back and shoot it, but until the new site is ready it has to work, so I really need help :(

 

Yesterday, the client reported a problem processing payments. Here's the error we're getting:

The payment failed: The underlying connection was closed: An unexpected error occurred on a send. / Stack Trace: at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) at System.Net.HttpWebRequest.GetRequestStream() at AuthorizeNet.Submit()

I wondered if it was due to 3DES retirement on the 18th. The last successful transaction was done on Sept. 19th at 10:12am ET, so I'm not sure. Would that have been possible if it is due to 3DES?

 

Authorize.net Live chat said based on the message, it is a GET request, and I'll need to update the Post transaction method. I understand the concept here but not the execution of the change.

 

There's another thread with the same title/error but I'm not sure if it's quite the same, or how to implement the solution. https://community.developer.authorize.net/t5/Integration-and-Testing/Sandbox-issues-The-underlying-c...

 

If anyone can help or even get me on track with a real direction, I would really appreciate it.

Thanks,
Jeff

itsyourit
Member
1 ACCEPTED SOLUTION

Accepted Solutions

Nexus, thanks for offering potential solutions, in a way you did provide the one that worked.

 

I went back and reviewed the hotfix from Microsoft. (https://support.microsoft.com/en-us/help/948963)

 

I missed the link for other versions available. We needed the x86 package, not the default one. Once that was applied and the server restarted, it worked.

 

So if anyone else happens to have this issue, try the hotfix and make sure you have the right version.

View solution in original post

7 REPLIES 7

After more testing and reading, I'm getting the impression the problem is stemming from 3DES retirement.

 

I'm not sure how to correct the issue. Is it a server feature/setting that needs to be updated? Is there anything in the code that will have to be changed?

 

I disabled 3DES on the server using IIS Crypto, as suggested in some other topics, and could no longer access the site in https.

 

I should probably point out that it's Windows Server 2003. If there's a band-aid for this, it would be a tremendous help and buy a little time to finish the new site. If anyone has ideas I'd appreciate it.

 

 

itsyourit
Member

There is a HotFix for Windows 2003 servers to enable stronger cipher suites :https://support.microsoft.com/en-us/help/948963

 

You should be able to disable the weak ciphers with IIS Crypto.

Powered by NexWebSites.com -
Certified Authorize.net developers

I found that but when running the installer it says it's not applicable. Any suggestions?

To disable 3DES on Windows 2003.

 

First, back up your registry.

 

Click Start, click Run, type regedit in the Open box, and then click OK.


Locate and then click the following subkey in the registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\

 

If the Triple DES key does exist, cool, edit the DWORD value, by Right-clicking Enabled, and then click Modify.
In the Value data box, type 00000000, and then click OK

If (Triple DES does not exist) {
On the Edit menu, point to New, and then click Key, Type the name of the key, Triple DES 168.

 

On the Edit menu, point to New, and then click DWORD Value.

Type Enabled for the name of the DWORD, and then press ENTER.
Right-click Enabled, and then click Modify.
In the Value data box, type 00000000, and then click OK.}

Powered by NexWebSites.com -
Certified Authorize.net developers

Nexus, thanks for offering potential solutions, in a way you did provide the one that worked.

 

I went back and reviewed the hotfix from Microsoft. (https://support.microsoft.com/en-us/help/948963)

 

I missed the link for other versions available. We needed the x86 package, not the default one. Once that was applied and the server restarted, it worked.

 

So if anyone else happens to have this issue, try the hotfix and make sure you have the right version.

What do you mean in a way? Isn't it obvious that you need to download the appropriate version for your operating system?  Congratulations on your solution.

Powered by NexWebSites.com -
Certified Authorize.net developers

I wrote "in a way" because I had already found and tried the hotfix. I went back for a second look after you suggested it.

 

I'm a developer, not a server administrator, so it was not "obvious" there were other versions available. I skipped over the link "show hotfixes for all platforms and languages" thinking they were other fixes or other servers than Windows 2003.

 

select hotfix

I do genuinely appreciate you taking a look and replying to the topic, as it did lead me back to take a closer look. If you care that much and feel you deserve credit for the solution, add a note to your post with the hotfix link that there are different versions and I'll change it.