ADC Direct Response
implementation
To integrate a
merchant's system with the payment system using the ADC Direct Response
method, a developer must be able to provide server side as well as
client side security for the connection. A developer would also need
to be able to write scripts or develop programs for their web server
to provide the necessary integration.
To implement the
ADC Direct Response method, a developer would design an HTML form
that would securely obtain all of the information needed to process
a transaction. The developer would then initiate a secure HTTP form
POST from their server to https://secure.authorize.net/gateway/transact.dll.
To the gateway server this connection would appear the same way as
if it were coming directly from a web browser. The fields contained
in the posted form would be all of the information necessary to process
a transaction, plus a couple of additional fields:
- x_ADC_Delim_Data
- This field must be included with a value of TRUE for an ADC Direct
Response transaction. When this field is set to TRUE, it specifies
that the results of the transaction should be sent back in a machine
readable format as specified in
Functional Reference.
- x_ADC_URL
- The value of this field must be set to FALSE for ADC Direct Response
ADC Relay Response
implementation
To implement the
ADC Relay Response method, a developer would design an HTML form that
would post all of the information needed to process a transaction
to https://secure.authorize.net/gateway/transact.dll. The customer
could continue the transaction on the Payment Form or not, just as
in the WebLink method. The fields contained in the posted form would
be all of the information necessary to process a transaction, plus
a couple of additional fields:
- x_ADC_Relay_Response
- This field must be in the form and set to a value of TRUE to tell
the system that it will be doing an ADC Relay Response transaction.
- x_ADC_URL
- The value of this field is the URL to which the system will return
the results of the transaction. The results of the transaction will
be returned via a HTTP form POST to the specified URL. As an extra
security precaution, the URL specified in this field must be a Valid
ADC or
Receipt Link URL, as specified in the URL Manager.
Once the gateway
server gets all of the transaction information, the transaction is
processed. Once the transaction is processed, an HTML form POST is
sent to the URL specified in x_ADC_URL with the results of the transaction.
Whatever script or program receives the results at that specified
URL can then decide what type of response to return. Any response
returned will be relayed to the browser as if it came directly from
the gateway server.
Caveats
Must use absolute
URLs
Since the HTML
code that is returned to the browser appears to come from the gateway
server, any links to images need to be absolute URLs, with the full
path to the server on which the images reside. If relative URLs are
used, the customer's browser will try to load the images from the
gateway server, which will fail.
x_ADC_URL
can’t be just a web page unless the server on which it resides can
handle a POST to that URL.
It is intended
that the URL specified in x_ADC_URL will be a script or something
else that can interactively parse the information that is POSTed to
it. If a static response is desired for every transaction, that URL
can be a plain HTML page, but the merchant's web server will need
to be configure to allow the POST method to plain HTML pages.