PHP PayPal Pro Adaptive PayFlow API Class

PHP PayPal Pro Adaptive PayFlow API Class

Easily integrate PayPal API web services for Payments Pro, Adaptive Payments, Adaptive Accounts, Invoicing, Permissions, or PayFlow into any PHP project.

  • Language: PHP
  • Released: Nov 6, 2011
    Last Update: Mar 28, 2014

Available on Github!

This class library includes methods to easily integrate all of PayPal's API's including PayPal Payments Pro, Adaptive Payments, Adaptive Accounts, Permissions, and PayFlow.

The class makes it extremely quick and easy to tie PayPal into your applications. It comes with template solution files for nearly every API call available. All you have to do is populate the request parameters and you'll get a PHP array result that includes everything you'll need from the API call.

Current calls included are:

PayPal Payments Pro

  • AddressVerify
  • BillAgreementUpdate
  • BillOutstandingAmount
  • CreateRecurringPaymentsProfile
  • DoAuthorization
  • DoCapture
  • DoDirectPayment
  • DoExpressCheckoutPayment
  • DoMobileCheckoutPayment
  • DoNonReferencedCredit
  • DoReauthorization
  • DoReferenceTransaction
  • DoVoid
  • GetAccessPermissionsDetails
  • GetAuthDetails
  • GetBalance
  • GetBillingAgreementCustomerDetails
  • GetExpressCheckoutDetails
  • GetTransactionDetails
  • ManagePendingTransactionStatus
  • ManageRecurringPaymentsProfileStatus
  • MassPay
  • RefundTransaction
  • SetAccessPermissions
  • SetExpressCheckout
  • SetMobileCheckout
  • TransactionSearch
  • UpdateAccessPermissions
  • UpdateRecurringPaymentsProfile

PayPal Adaptive Payments

  • AddBankAccount
  • AddPaymentCard
  • CancelInvoice
  • CancelPermissions
  • CancelPreapproval
  • CreateAccount
  • CreateAndSendInvoice
  • CreateInvoice
  • DeleteInvoice
  • ExecutePayment
  • GenerateInvoiceNumber
  • GetAccessToken
  • GetAdvancedPersonalData
  • GetBasicPersonalData
  • GetFundingPlans
  • GetInvoiceDetails
  • GetPaymentOptions
  • GetPermissions
  • GetShippingAddress
  • GetVerifiedStatus
  • MarkInvoiceAsPaid
  • MarkInvoiceAsRefunded
  • MarkInvoiceAsUnpaid
  • Pay
  • PaymentDetails
  • Preapproval
  • PreapprovalDetails
  • Refund
  • RemindInvoice
  • RequestPermissions
  • SearchInvoices
  • SendInvoice
  • SetFundingSourceConfirmed
  • SetPaymentOptions
  • UpdateInvoice
  • BMButtonSearch

PayPal PayFlow

  • Authorization
  • Balance Inquiry
  • Credit
  • Delayed Capture
  • Voice Authorization
  • Inquiry
  • Data Upload
  • Duplicate Transaction
  • Sale
  • Void
You need to log-in or create an account
  • Create an account
  • Log-in

Please use your real name.

Activation link will be sent to this address.

Minimum 8 characters

Enter your password again

Clicking this button confirms you read and agreed to the terms of use and privacy policy.


Save your watchlist

Fill your details below to receive project updates from your watch list - including new versions, price changes and discounts.

I agree to the terms of use and privacy policy.

License » GNU GPL Download
  • Great class.
    Very professionally presented.
    An amazing asset that made my life way easier!
    AB Ariel Bud
    2 weeks ago, 0 comments
    Was this helpful?
  • Very useful. Good quality coding and simplified the process greatly. Thanks.
    AC Andrew Colbourne
    5 months ago, 0 comments
    Was this helpful?
  • I think this Api class is quite good. All the things needed is there
    G Gen
    6 months ago, 0 comments
    Was this helpful?
Post a comment

Or enter your name and Email
  • A Arda 3 hours ago
    Hello Andrew, Firstly, thanks for the awesome class and maintaining this! I've been using since CodeIgniter days, and I'll be using this now in Laravel 4, since you've added composer support on GitHub. In my project, I'll be using Express Checkout, Auth/Capture model, but I couldn't find any example in your examples folder for Auth/Capture. Could you please provide this? Or am I missing it? I've already checked callbacks for express checkout. (I am already following your GitHub repo to catch up, if that'd help you) Thank again, Best Regards,
    • Andrew Angell Developer 2 hours ago
      Glad to hear you've been using it for awhile and like it. Thanks! For Express Checkout Authorization you'll use the regular EC calls: SetExpressCheckout, GetExpressCheckoutDetails, DoExpressCheckoutPayment. You'll just set the PaymentAction to Authorization instead of Sale. Those are available in the samples folder, although I believe GECD is tied into the DoExpressCheckoutPayment.php sample. For the capture you would use DoCapture. I don't have a sample for that setup, but there is a template for it in the templates directory: It works exactly like all the other samples/templates. Just need to fill in the array data for the request.
    • A Arda 1 hour ago
      Hey Andrew, Thanks for the fast reply, much appreciated! I totally ignored the templates folder while checking for i-don't-know-why :) I have some similar questions, I hope you can help me: 1. There is this "refund capture" method in GitHub paypal/rest-api-sdk-php. I couldn't find it in your templates. Should the refund() work also for refunding the captures ? 2. How about voiding authorization(s)? Does your void() method exactly for this purpose? 3. (not really related to a code question, just asking for ideas if you have any idea(s) :) ) To totally refund, is voiding unprocessed authorizations and refunding captures suffice? Thanks again for your time, Best Regards,
  • MV Manmohit Verma 5 days ago
    I am getting following error : Parse error: syntax error, unexpected T_FUNCTION, expecting ')' in /home/content/68/8460168/html/wp-content/themes/eStore/autoload.php on line 7 I am using payflow ( PayFlowTransaction.php ) Please help me...
    • Andrew Angell Developer 5 days ago
      Looks like a problem with your autoload.php..?? Did you check line 7 in that file for a missing ) ?
  • PG Phil Gale 3 months ago
    Wow thanks for this, seems to be exactly what I was looking for!
    • Andrew Angell Developer 3 months ago
      I'm glad to hear it. Let me know if you have any questions when you get going.