Skip to content
Php SDK for PayPal RESTful APIs
Branch: master
Clone or download
Pull request Compare This branch is 2 commits ahead, 464 commits behind paypal:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Build Status Coverage Status Latest Stable Version Total Downloads

This repository contains PayPal's PHP SDK and samples for REST API.

Before starting to use the sdk, please be aware of the existing issues and currently unavailable or upcoming features for the REST APIs. (which the sdks are based on)


  • PHP 5.3 or above
  • curl, json & openssl extensions must be enabled
  • composer for fetching dependencies (See

Running the sample

  • Clone the repo and navigate to the samples folder.
  • Samples have dependency on the sdk and you can use Composer to get the dependencies. Ensure that you have composer installed on your machine, navigate to the samples folder and run 'composer update --no-dev' to fetch the SDK.
  • In case you cannot install composer on your machine, you can also fetch the SDK bundle from and unzip the bundle in to the samples folder.
  • Optionally, update the bootstrap.php file with your own client Id and client secret.
  • Run any of the samples in the 'samples' folder to see what the APIs can do.


To write an app that uses the SDK

  • Copy the composer.json file from the sample folder over to your project and run 'composer update --no-dev' to fetch all dependencies.
  • Copy the sample configuration file sdk_config.ini to a location of your choice and let the SDK know your config path using the following define directive.
    define('PP_CONFIG_PATH', /path/to/your/sdk_config.ini);
  • Obtain your clientId and client secret from the developer portal. You will use them to create a OAuthTokenCredential object.
  • Now you are all set to make your first API call. Create a resource object as per your need and call the relevant operation or invoke one of the static methods on your resource class.

    $apiContext = new ApiContext(new OAuthTokenCredential('<clientId>', '<clientSecret>'));
    $payment = new Payment();





    $payment = Payment::get('payment_id', $apiContext);

SDK Configuration

The samples in this repo pick the SDK configuration from the sdk_config.ini file. If you do not want to use an ini file or want to pick your configuration dynamically, you can use the $apiContext->setConfig() method to pass in the configuration as a hashmap. See the sample/bootstrap.php file for an example.


More help

Bitdeli Badge

You can’t perform that action at this time.