Prerequisites for Authorize.Net Integration¶
To start using Authorize.Net with the OroCommerce application, complete the following:
Sign up for the Authorize.Net service and configure it.
To set up an account in USD or CAD, sign up for the service at authorize.net. If you would like your account to operate in another currency, use one of the local Authorize.Net websites (see Authorize.Net Support).
Authorize.Net can process payments in different currencies, however, it does not offer multi-currency accounts. Therefore, you need to create a separate gateway account with Authorize.Net and separate integration in OroCommerce for every currency you would like to accept payments in.
While configuring your Authorize.Net account, note down the security measures and, particularly, the Card Code Verification (CCV) security setup. Ensure that Authorize.Net integration configuration in the OroCommerce is aligned with the one in the Authorize.Net. For example, the Require CVV Entry option should indicate whether your Authorize.Net account is set to demand CVV from buyers or not.
On your Authorize.Net merchant interface, find or generate the following credentials:
- API Login ID
- Transaction Key
- Public Client Key
You will use them to set up the integration between OroCommerce and Authorize.Net.
See the Get Authorize.Net Credentials Required for Integration with OroCommerce section for more information.
In your Oro Management Console, configure an integration with Authorize.Net. See the Authorize.Net Integration topic for more information. You can configure several integrations with different sets of options to enable multiple Authorize.Net payment methods for checkout.
In your Oro Management Console, configure a payment rule that defines conditions under which the configured payment method is available during checkout. For example, a certain method may be available for customers from France, or only when a shopping cart amount exceeds $1000. See the Payment Rules topic for more information.
Now you are ready to accept card payments via Authorize.Net.
Get Authorize.Net Credentials Required for Integration with OroCommerce¶
Open https://account.authorize.net/ and log into Authorize.Net merchant interface:
Navigate to Account > Settings > Security Settings.
Click API Credentials & Keys and on the page that opens copy your API login ID and transaction key. If required, generate new ones.
Click Manage Public Client Key and on the page that opens copy your public client key. If required, generate a new one.
Test Authorize.Net Integration¶
When you set up an Authorize.Net integration for the first time and would like to check how payment via Authorize.Net works, you can use Authorize.Net Sandbox Account. In a sandbox environment, with emulated transactions, you can test your customization and use the checkout with payment methods enabled by Authorize.Net.
To troubleshoot the integration issues or demonstrate the payment process, you can use your merchant’s Authorize.Net account in Test Mode.
Set up an integration using the API Login ID and keys generated for your actual Authorize.net account. Enable the Test mode option to inform the system that you would like only to test the connection to Authorize.Net.
Transactions made in the test mode are not sent to a financial institution for processing (i.e. actual money transfer does not take place). These transactions are not stored by the payment gateway and do not appear in search results and reports. Returned transaction ID is zero.
The test mode can be set up on the Authorize.Net merchant interface and on the Oro Management Console (in the Authorize.Net integration settings). Settings made via the Oro Management Console override settings made via Authorize.Net merchant interface.
Enable the Test Mode¶
To enable the test mode, complete the following:
Navigate to System > Integrations > Manage Integrations.
Click the Authorize.Net integration for which you would like to turn the test mode on.
On the integration edit page, find the Test Mode check box and select it.
Click Save & Close.
Create a special free test account at https://developer.authorize.net/hello_world/sandbox/, and use the API Login ID and keys generated for it.
Transactions made via integration that uses the API Login ID and keys generated for sandbox account are sent to the special testing server and are not sent to the financial institution for processing. However, in other aspects, the sandbox works the same as actual production server, and returns proper transaction IDs.
Do not use the test mode with your sandbox account if you require proper responses from the server.
Use sandbox account when customizing the Authorize.Net integration or if you do not have an actual account with Authorize.Net but you would like to check how the integration works.
For more information about how to use the sandbox, see Authorize.Net Testing Guide.