C. Verisign Payflow Pro Functions


This extension allows you to process credit cards and other financial transactions using Verisign Payment Services, formerly known as Signio (http://www.verisign.com/products-services/payment-processing/online-payment/payflow-pro/index.html).

When using these functions, you may omit calls to pfpro_init() and pfpro_cleanup() as this extension will do so automatically if required. However the functions are still available in case you are processing a number of transactions and require fine control over the library. You may perform any number of transactions using pfpro_process() between the two.

These functions were added in PHP 4.0.2.

Note: These functions only provide a link to Verisign Payment Services. Be sure to read the Payflow Pro Developers Guide for full details of the required parameters.

Note: This extension is not available on Windows platforms.


You will require the appropriate SDK for your platform, which may be downloaded from within the manager interface once you have registered.

Once you have downloaded the SDK you should copy the files from the lib directory of the distribution. Copy the header file pfpro.h to /usr/local/include and the library file libpfpro.so to /usr/local/lib.

Alternatively, you can extract the tarball from Verisign in one location, and reference it during build configuration with the --with-pfpro[=DIR] option:

Example 1. Explicit Configuration

tar -zxf pfpro_sunsparc.tar.gz -C /usr/local/

./configure --with-pfpro=/usr/local/verisign/payflowpro/sunsparc

Note: The last portion of the path specified in the example above, in this case sunsparc, will vary based on which architecture your Verisign SDK was built for.


These functions are only available if PHP has been compiled with the --with-pfpro[=DIR] option.


If you are planing to use this extension along with the OpenSSL extension or with ModSSL, you should compile this extension as shared: --with-pfpro=shared,/usr/local.

Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

Table 1. Verisign Payflow Pro configuration options

pfpro.defaulthost/PFPRO_VERSION < 3 "test.signio.com"PHP_INI_ALL 
pfpro.defaulthost"test-payflow.verisign.com"PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.defaultport"443"PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.defaulttimeout"30"PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.proxyaddress""PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.proxyport""PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.proxylogon""PHP_INI_ALLAvailable since PHP 4.0.2.
pfpro.proxypassword""PHP_INI_ALLAvailable since PHP 4.0.2.
For further details and definitions of the PHP_INI_* constants, see the Appendix H.

Resource Types

This extension has no resource types defined.

Predefined Constants

This extension has no constants defined.

Table of Contents
pfpro_cleanup -- Shuts down the Payflow Pro library
pfpro_init -- Initialises the Payflow Pro library
pfpro_process_raw -- Process a raw transaction with Payflow Pro
pfpro_process -- Process a transaction with Payflow Pro
pfpro_version -- Returns the version of the Payflow Pro software