PHPackages                             cpierce/cakephp-paypalwpp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. cpierce/cakephp-paypalwpp

ActiveCakephp-plugin[Payment Processing](/categories/payments)

cpierce/cakephp-paypalwpp
=========================

CakePHP plugin to handle paypal web payments pro

463PHP

Since Oct 20Pushed 4y ago1 watchersCompare

[ Source](https://github.com/cpierce/paypalwpp-plugin-for-cakephp-2.x)[ Packagist](https://packagist.org/packages/cpierce/cakephp-paypalwpp)[ RSS](/packages/cpierce-cakephp-paypalwpp/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

PayPal WebPaymentsPro (WPP) Component for CakePHP 2.x
=====================================================

[](#paypal-webpaymentspro-wpp-component-for-cakephp-2x)

CakePHP 2.x Component for interfacing with Paypal WPP

Usage:
======

[](#usage)

Load plugin in your APP and enable it by using the following bootstrap.php config:

```
	CakePlugin::load('PaypalWPP');

```

Configure your account by opening the Config/paypal.php file as follows

```
	$config = [
		'paypal' => [
			'username'  => 'username_api1.domain.com',
			'password'  => 'THGSWS658IKUN79S',
			'signature' => 'AFYn4irhcVyzOOiJkc.H2zPIuztlArzO7mr5uXMO6DLICAE85JF.H5PPp',
			'endpoint'  => 'https://api-3t.paypal.com/nvp',
			'version'   => '53.0',
		],
	];

```

Load the Component into the controller of your choice.

```
	public $components = [
		'PaypalWPP.PaypalWPP',
	];

```

Next urlencode your data and send it to the component using a method and an nvp. For doing payments using DoDirectPayment ([https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoDirectPayment\_API\_Operation\_NVP/](https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoDirectPayment_API_Operation_NVP/)) the following example would work:

```
    /**
     * Add Method.
     */
    public function add()
    {
		if ($this->request->is('post') || $this->request->is('put')) {
			$firstName        = urlencode($this->request->data['Sale']['first_name']);
			$lastName         = urlencode($this->request->data['Sale']['last_name']);
			$creditCardType   = $this->request->data['Sale']['card_type'];
			$creditCardNumber = $this->request->data['Sale']['card_number'];
			$expDateMonth     = $this->request->data['Sale']['exp']['month'];
			$padDateMonth     = str_pad($expDateMonth, 2, '0', STR_PAD_LEFT);
			$expDateYear      = $this->request->data['Sale']['exp']['year'];
			$cvv2Number       = $this->request->data['Sale']['cvv2'];
			$amount           = $this->request->data['Sale']['amount'];
			$nvp              = '&PAYMENTACTION=Sale';
			$nvp             .= '&AMT=' . $amount;
			$nvp             .= '&CREDITCARDTYPE=' . $creditCardType;
			$nvp             .= '&ACCT=' . $creditCardNumber;
			$nvp             .= '&CVV2=' . $cvv2Number;
			$nvp             .= '&EXPDATE=' . $padDateMonth.$expDateYear;
			$nvp             .= '&FIRSTNAME=' . $firstName;
			$nvp             .= '&LASTNAME=' . $lastName;
			$nvp             .= '&COUNTRYCODE=US&CURRENCYCODE=USD';

			$response = $this->PaypalWPP->wpp_hash('DoDirectPayment', $nvp);
			if ($response['ACK'] == 'Success') {
				$this->Session->setFlash('Payment Successful');
			} else {
				$this->Session->setFlash('Payment Failed');
			}
			debug($response);
		}
	}

```

Other Methods can be found at

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/551334?v=4)[Chris Pierce](/maintainers/cpierce)[@cpierce](https://github.com/cpierce)

---

Top Contributors

[![cpierce](https://avatars.githubusercontent.com/u/551334?v=4)](https://github.com/cpierce "cpierce (23 commits)")

### Embed Badge

![Health badge](/badges/cpierce-cakephp-paypalwpp/health.svg)

```
[![Health](https://phpackages.com/badges/cpierce-cakephp-paypalwpp/health.svg)](https://phpackages.com/packages/cpierce-cakephp-paypalwpp)
```

###  Alternatives

[omnipay/paypal

PayPal gateway for Omnipay payment processing library

3156.8M53](/packages/omnipay-paypal)[eduardokum/laravel-boleto

Biblioteca com boletos para o laravel

626351.9k2](/packages/eduardokum-laravel-boleto)[tbbc/money-bundle

This is a Symfony bundle that integrates moneyphp/money library (Fowler pattern): https://github.com/moneyphp/money.

1961.9M](/packages/tbbc-money-bundle)[2checkout/2checkout-php

2Checkout PHP Library

83740.3k2](/packages/2checkout-2checkout-php)[smhg/sepa-qr-data

Generate QR code data for SEPA payments

61717.2k5](/packages/smhg-sepa-qr-data)[omnipay/dummy

Dummy driver for the Omnipay payment processing library

271.2M33](/packages/omnipay-dummy)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
