Difference between revisions of "Configuring Authorize.NET"

From Opentaps Wiki
Jump to navigationJump to search
m (Testing Specific Gateway Failures)
m (Testing Specific Gateway Failures)
Line 21: Line 21:
 
=== Testing Specific Gateway Failures ===
 
=== Testing Specific Gateway Failures ===
  
Suppose you wish to see what happens when there is an AVS address verification failure (code 27) that results in an authorization being declined.  We can trigger the test server to return this by using a special VISA credit card number 4222222222222 and an authorization amount equal to the error code ($27.00).  Because the CC validation code will not let you create this number, you'll have to create a CreditCard record by hand and a PaymentMethod for it.
+
Suppose you wish to see what happens when there is an AVS address verification failure (code 27) that results in an authorization being declined.  We can trigger the test server to return this by using a special VISA credit card number '''4222222222222''' and an authorization amount equal to the error code ($27.00).  Because the CC validation code will not let you create this number, you'll have to create a CreditCard record by hand and a PaymentMethod for it.
  
Set <tt>payment.authorizedotnet.test</tt> in <tt>payment.properties</tt> to ''TRUE'' and restart opentaps.  When you authorize this CC for $27, you should get the following response,
+
Make the following change to '''payment.properties''',
 +
 
 +
<pre>
 +
    payment.authorizedotnet.test=TRUE
 +
</pre>
 +
 
 +
Restart opentaps and create an order with an offline payment. Cancel the payment and add a new payment for the amount you want to test, in this example $27.  Opentaps will automatically authorize the payment, which should trigger the desired transaction error code,
  
 
<pre>
 
<pre>
Line 29: Line 35:
 
</pre>
 
</pre>
  
When you're done, be sure to set the test parameter back to FALSE.
+
When you're done, be sure to set '''payment.authorizedotnet.test''' back to '''FALSE'''.

Revision as of 01:33, 5 January 2008

Testing Your Setup

Authorize.NET has a live server and a testing server. Both servers behave in exactly the same way with the exception that the testing server does not perform any real financial transactions. Hence, the testing server should be used to do development work and to trial run Opentaps features such as order fulfillment to see how they behave.

The testing server requires a testing account, which is distinct from a real account. A testing account can be obtained from,

http://developer.authorize.net/testaccount/

Next, you will need to configure payment.properties for testing. The following setup is recommended,

payment.authorizedotnet.url=https://test.authorize.net/gateway/transact.dll
payment.authorizedotnet.trankey=   Transaction key of the testing account
payment.authorizedotnet.test=FALSE
payment.authorizedotnet.logging=TRUE
payment.authorizedotnet.login=     API Login key of the testing account

The test parameter should be set to FALSE except for testing special things that will be described below. Setting it to true will turn on Test Mode, which is a special state that prevents transaction IDs from being generated and affects both the live and testing server. This is generally not useful, except in specific cases as we'll come to in the next section. If unsure, always set test to FALSE.

Testing Specific Gateway Failures

Suppose you wish to see what happens when there is an AVS address verification failure (code 27) that results in an authorization being declined. We can trigger the test server to return this by using a special VISA credit card number 4222222222222 and an authorization amount equal to the error code ($27.00). Because the CC validation code will not let you create this number, you'll have to create a CreditCard record by hand and a PaymentMethod for it.

Make the following change to payment.properties,

    payment.authorizedotnet.test=TRUE

Restart opentaps and create an order with an offline payment. Cancel the payment and add a new payment for the amount you want to test, in this example $27. Opentaps will automatically authorize the payment, which should trigger the desired transaction error code,

    (TESTMODE) The transaction resulted in an AVS mismatch. The address provided does not match billing address of cardholder.

When you're done, be sure to set payment.authorizedotnet.test back to FALSE.