Some countries have regulations on the use of cryptographic libraries like the ones embedded in TCLink. It may be unlawful to download TCLink in these countries. TCLink v4.5.0 PHP Implementation copyright (C) TrustCommerce 2019-2020 http://www.trustcommerce.com techsupport@trustcommerce.com February 17, 2020 I. DESCRIPTION TCLink is a thin client library to allow your servers to connect to the TrustCommerce payment gateway easily and consistently. The protocol (which is the same across all platforms and languages) is well-documented in the TC Link API Developer Guide, so please consult it for any questions you may have about the protocol syntax itself. If you are on a Windows environment, do not use this client. Please download the COM object and use the COM functions available for Windows to access the TCLink object. See here for more information: http://www.php.net/manual/en/ref.com.php TCLink was originally ported to PHP by Andrew Barnett of Data Clarity. Thanks go to both him (for the code) and his business (for their support of open source). II. LICENSE TCLink for PHP is released under the GNU LGPL. Please read LICENSE for details. III. REQUIREMENTS You must be running PHP 4.0.4pl1 or higher. You need to have the OpenSSL development libraries installed. It is recommended you use the most recent version provided by the vendor for PCI reasons. Besides the normal PHP install, you'll need the php-devel package, which contains files needed for building PHP modules. You can tell if this package is installed if the binary "phpize" is in your path. IV. BUILDING At the root directory of this archive, execute the following: phpize Afterwards, type the following commands, distribution specific comments provided when available: General Instructions: ./configure --with-ssl=[directory containing libssl.so] make Debian Jessie: Debian Stretch: Debian Buster: ./configure --with-ssl=/usr/lib/x86_64-linux-gnu make Centos 8.1.1911: ./configure --with-ssl=/usr/lib64 make If you are not sure where your SSL library is installed, contact your system administrator or hosting provider for more information. If the module builds without errors and you have access to PHP at the command line, you can test it with the following command: php -d extension=modules/tclink.so tctest.php This script will run a test transaction and print the results. V. INSTALLATION If you have root access to the machine, you will probably want to install TCLink as a global extension. You can do this by copying the module library (modules/tclink.so) to your PHP extensions directory (typically /usr/lib/php*). Your extensions directory is defined by the "extension_dir" directive in php.ini. Edit php.ini (typically found somewhere in /etc) and add the following line: extension=tclink.so Restart your webserver, and all PHP scripts will have access to TCLink. If you can't or don't want to install the module system wide, you can still load it manually in each script that needs to access it through the dl() call. Your system must be configured to allow dynamic loading of modules for this to work; see your system administrator or hosting provider. VI. USAGE The tctest.php script shows a simple example of running transactions through the TCLink API. A more complex example is contained in tcexample.php. The curltest.php script shows a simple example of running transactions through the HTTPS post, as described in the TC Link API Developer Guide. It is provided here in as a conveinence to users who are unable to install TCLink and have Curl available in their installation. VII. PLATFORMS The included code has been tested on the following platforms: CentOS Linux release 8.1.1911 (Core) OpenSSL Version 1.1.1c-2 (Distribution), php-cli-7.2.11-2.module_el8.1.0+209+03b9a8ff.x86_64 (Distribution) Debian Linux release 8.11 OpenSSL Version 1.0.1t-1+deb8u12 (Distribution), PHP version 5.6.40+dfsg-0+deb8u8 (Distribution) Debian Linux release 9.8 OpenSSL Version 1.1.0l-1~deb9u1 (Distribution), PHP version 7.0.33-0+deb9u6 (Distribution) Debian Linux release 10.3 OpenSSL Version 1.1.1d-0+deb10u2 (Distribution), PHP version 7.3.11-1~deb10u1 (Distribution)