Skip to content
A simple Python client for PayPal's Payflow Pro API (HTTPS Interface).
Find file
New pull request

PayPal's Payflow Pro Python Client

python-payflowpro (or simply payflowpro within the Python environment) provides an interface to the PayPal Payflow Pro API (HTTPS Interface) making it easy for you to collect and manage payments within your python-based applications.

This project is a fork of James Murty & John D'Agostino's python-payflowpro project hosted on Google Code and is now considered the most current and active.

Specifically, It allows you to:

  • Submit Sales Transactions
  • Submit Authorization & Delayed Capture Transactions
  • Security Code (CVV, CVC2, CVV2) & Address Verification (Requires Verification module. Additional costs apply.)
  • Create Recurring Billing Profiles (Requires Recurring Billing module. Additional costs apply.)
  • Modify & Reactivate Recurring Billing Profiles
  • Display payment history of a Recurring Billing Profile
  • Cancel A Recurring Billing Profile (aka 'Freezing')
  • Inquiry Transactions (One-time & Recurring Billing Profile)

Payment Methods Supported (TENDER_TYPES)

  • Automated clearinghouse
  • Credit card
  • Pinless debit
  • Telecheck
  • PayPal

Transactions Types Supported (TRANSACTION_TYPES)

  • Sale transaction
  • Credit
  • Authorization
  • Delayed Capture
  • Void
  • Voice Authorization
  • Inquiry
  • Duplicate transaction
  • Recurring (Optional. Requires Recurring Billing module. Additional costs apply.)


The recurring billing functionality of this library requires the PayflowPro account to have the Recurring Billing module activated (additional costs apply). Likewise with the Security Code & Address Verification module. Unless you have the appropriate modules enabled within your Paypal Payflow Pro Account (This is set via the Paypal Manager), passing Street Addresses and Security Codes will not be ran through verification.


You can install python-payflowpro one of three ways:

  • run python install within the python-payflowpro directory
  • ln -s /path/to/python-payflowpro/payflowpro /path/to/site-packages/
  • pip install -e git://

Each approach gives you the same result. You can test your installation by starting an interactive prompt:

$ python
>>> import payflowpro
>>> payflowpro.VERSION
(0, 3, 'pre')


Refer to the file in the tests subdirectory for example usage of the client.

To run the tests you will have to edit the file and set the following variables with a valid Payflow Pro Account.

Something went wrong with that request. Please try again.