The Payflow Software Development Kit (SDK) is a set of APIs to allow you to integrate the Gateway with your application or website. This section includes:

Note: Each SDK includes full API documentation.

Important: The Payflow SDK is available as a .NET or Java library. Using these SDKs is recommended to simplify integration. Alternately you can build your own API by posting transactions directly to the Gateway servers using HTTPS. See Posting Transactions Directly Without the Payflow SDK for more information.

Any reference to Payflow SDK or the API in this documentation is referred to simply as the Payflow SDK.

Prepare the Payflow Gateway Client Application

Unless you build your own API and use HTTPS to post to the servers, you must obtain the Payflow SDK:

  • Download the Payflow SDK.
  • Extract the files to a local directory.
  • Configure your firewall.
    • If you have a stateful firewall, enable outbound traffic for HTTPS (port 443). The firewall keeps state on the connection, and automatically permits the inbound response from PayPal.
    • If you do not have a stateful firewall, enable inbound and outbound traffic for HTTPS (port 443). Outbound traffic permits the initial Gateway request, while inbound permits the response from PayPal.
  • Read the Readme.txt file.
    • The Readme.txt file includes integration information and samples that illustrate how to use the client application in your development environment.

Activate Your Payflow Gateway Account

When you are ready to activate your Gateway account to submit live transactions, follow these steps:

  • Log in to PayPal Manager at https://manager.paypal.com
  • Click Activate Your Account and follow the on-screen instructions.
  • Change the URL within your web or desktop application to point to the live Gateway server host addresses.

Host URL Addresses

Use the following host addresses for sending test and live transactions:

  • For live transactions, use https://payflowpro.paypal.com
  • For testing purposes, use https://pilot-payflowpro.paypal.com

Important: Since Payflow is operating out of multiple data centers we highly suggest that all API calls are done using the host URLs above. Should you hard code the IP addresses to send transactions via the Payflow API, PayPal cannot be responsible should your transactions fail should a data center be offline due to any issues or any scheduled maintenances.

Test Your PayPal Payments Advanced and PayPal Payments Pro Integration

If you have a PayPal Payments Advanced or a PayPal Payments Pro account and you would like to use the testing URL to test your integration, follow the steps outlined in this Set Up and Test Hosted Pages article.

Note: If you would like to test a Payflow Express Checkout transaction, follow steps one through three outlined in the above-mentioned knowledge base article. In addition, be sure to do the following:

  • In the PayPal sandbox, create a buyer account and add a positive balance to the account. See creating sandbox accounts for more information.
  • Send all test transaction requests as POSTs to the Payflow testing host address: https://pilot-payflowpro.paypal.com.
  • Send Express Checkout redirects to: https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=<EC-Token>. You must be logged into the sandbox before redirecting.

Pass Information to and Receive Information from the Hosted Pages

If you would like to pass information to or receive information from the PayPal Hosted Checkout Pages, use one of the following URLs:

  • For live transactions, use https://payflowlink.paypal.com
  • For testing purposes, use https://pilot-payflowlink.paypal.com

Note: The MODE parameter for passing a test secure token is deprecated. Instead, post your form parameters to the testing Payflow Link URL.