Authorize.Net PHP SDK

Requirements
- PHP 5.6 to 8.x.x
- cURL PHP Extension
- JSON PHP Extension
- An Authorize.Net account (see Registration & Configuration section below)
- TLS 1.2 capable versions of libcurl and OpenSSL (or its equivalent)
Migrating from older versions
Since August 2018, the Authorize.Net API has been reorganized to be more merchant focused. Authorize.Net AIM, ARB, CIM, Transaction Reporting, and SIM classes have been deprecated in favor of net\authorize\api. To see the full list of mapping of new features corresponding to the deprecated features, see MIGRATING.md.
Contribution
- If you need information or clarification about Authorize.Net features, create an issue with your question. You can also search the Authorize.Net developer communityfor discussions related to your question.
- Before creating pull requests, read the contributors guide
TLS 1.2
The Authorize.Net APIs only support connections using the TLS 1.2 security protocol. Make sure to upgrade all required components to support TLS 1.2. Keep these components up to date to mitigate the risk of new security flaws.
To test whether your current installation is capable of communicating to our servers using TLS 1.2, run the following PHP code and examine the output for the TLS version:
<?php
$ch = curl_init('https://apitest.authorize.net/xml/v1/request.api');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
$data = curl_exec($ch);
curl_close($ch);