This extension adds a PayPal Donation page on your site.
- PayPal REST API integration
- Auto group
- Donors list
- Notifications system
- Statistics auto update
- Transactions log
- Add Manual Transaction (since 2.1.0)
- Safely test this extension with PayPal Sandbox.
- Display Statistics donation on the Donation page and on the bottom of the forum index page
- Progress bar
- Donation received
- Donation used
- Goal to reach
- Advanced currencies management.
- Customize the main donation page, success page and cancel page.
- Multi-language customization available through the ACP
- BBcode usage available
- Predefined variables
- Automatic redirection to the forum after a successful/cancelled donation.
- Define and suggest a default donation value, or use a drop-down list.
- Admin and user permissions can be set through
ACP -> Permissions. - All options are manageable from ACP.
- Unpack the downloaded release and copy files to the
ext/skouat/ppdedirectory. - Navigate in the ACP to
Customise -> Manage extensions. - Look for
PayPal Donationunder the Disabled Extensions list, and click itsEnablelink. - Set up and configure PayPal Donation by navigating in the ACP to
Extensions -> PayPal Donation. - If your board enforces a Content Security Policy, see docs/csp.md to allow PayPal's domains.
Versions prior to 4.0.0 relied on PayPal IPN, which is now deprecated by PayPal and no longer usable for this donation flow. As a result, donations no longer work on earlier versions. Version 4.0.0 switches to the PayPal REST API, which restores donations and removes the requirement to use a charity/non-profit PayPal account. Upgrading is therefore required. After updating the files, follow these steps to get donations working again:
- Update requirements: make sure your board runs phpBB 3.3.11+, PHP 7.2+ and that the PHP
opensslandcurlextensions are enabled. - Create a REST API app:
- Go to the PayPal Developer Dashboard → Apps & Credentials.
- Create an app (or open an existing one) for Live, and note its Client ID and Secret. Repeat under the Sandbox tab if you want to test.
- Create a webhook:
- In the ACP, go to
Extensions -> PayPal Donation -> PayPal Featuresand copy the Webhook URL displayed there. - In the PayPal Developer Dashboard, open your app and add a webhook using that URL, subscribed to the following events:
- “Payment capture completed” (
PAYMENT.CAPTURE.COMPLETED) — records donations - “Payment capture refunded” (
PAYMENT.CAPTURE.REFUNDED) — tracks refunds - “Payment capture reversed” (
PAYMENT.CAPTURE.REVERSED) — tracks chargebacks/reversals - “Payment capture pending” (
PAYMENT.CAPTURE.PENDING) — tracks payments awaiting settlement (e.g. card payments) - “Payment capture denied” (
PAYMENT.CAPTURE.DENIED) — tracks declined captures
- “Payment capture completed” (
- Copy the generated Webhook ID. Repeat for the Sandbox app if needed.
- In the ACP, go to
- Enter the credentials in the ACP: in
PayPal Features, fill in the Client ID, Secret and Webhook ID for Live (and Sandbox if used), then save. - Test the connection: use the “Test connection” button to confirm your credentials are valid.
- Content Security Policy: if your board enforces a CSP, update it to allow PayPal's domains (see docs/csp.md).
Note: The legacy “PayPal account ID” (email/Merchant ID) under General Settings is no longer used to process payments; the REST API relies on the Client ID/Secret above.
- Navigate in the ACP to
Customise -> Extension Management -> Extensions. - Look for
PayPal Donationunder the Enabled Extensions list, and click itsDisablelink. - To permanently uninstall, click
Delete Dataand then delete the/ext/skouat/ppdedirectory.
- Important: Only official release versions validated by the phpBB Extensions Team should be installed on a live forum. Pre-release (beta, RC) versions downloaded from this repository are only to be used for testing on offline/development forums and are not officially supported.
- Report bugs and other issues in the Issue Tracker.
- Support requests should be posted and discussed in the PayPal Donation topic at phpBB.com.
- This project use Crowdin for translations.
Feel free to join the project, and read this Quick Translator Guide. - You can also send your translations in the PayPal Donation translation topic at phpBB.com.
