This happens if the callback fails (the "relay response").
Authorize.Net will try to contact your shop to tell it what the result of the transaction is. It does this through the callback (aka "relay") URL. Failures can have many causes, and here are a few:
- You have not pre-registered the URL with the Authorize.Net account.
- Your site does not respond with a HTTP 200 (usually an error in your code).
- You have used a https URL and a self-signed certificate. Authorize.Net can use http or https, but if it's https, then the certificate needs to be 100% valid and trusted.
If you know the relay URL, try it manually and see what happens. If you don't know it, then you probably haven't registered it with Authorize.Net.
Either your application sends the relay URL it wants to use with the original authorization request, or you set up a default relay URL in the Authorize.Net admin panel. Both ways should work. Authorize.Net will use the one it is given, or fall back to the default if it is not givem a URL. If there is no default and none is provided by your application, then that is another source of error.
-- Jason