3 PayPalDonations
David Anderson edited this page 2023-08-22 13:15:33 -07:00

Accepting donations through PayPal

BOINC offers a donation system based on PayPal. It is disabled by default; to enable it, add the following code to your project/project.inc file:

define("PAYPAL_ADDRESS", "paypal@example.com");
define("DONATION_CURRENCY", "EUR");

PAYPAL_ADDRESS

Email address, associated with PayPal account that will receive money

DONATION_CURRENCY

Currency in which donations are accepted. Can be one of the following values: EUR, CAD, GBP, USD, JPY, AUD, NZD, CHF, HKD, SGD, SEK, DKK, PLN, NOK, HOF, CZK.

The project can display donation targets by adding data into donation_items database table. This allows donators to choose specific donation target when donating, and will also show current donation progress using progress bars.

To automatically update progress bars and transaction table (donation_paypal), Instant Payment Notification (IPN) has to be enabled in PayPal account. To activate Instant Payment Notification, you will need to enter the URL to your Profile to which automatic notification requests will be send. In order to use the script provided by BOINC, the URL has to be set to BASE_URL/donation_ipn.php, where BASE_URL is project's HTML dir.

It should be clearly stated where donation money is going to be used; therefore, a function named donations_intro() should be defined in project/project.inc file. It should use PHP echo() command to display generic information about donations.

Once the donation system has been enabled, a link to BASE_URL/donations.php should be added to project front page. In addition, BOINC forum software expects a file project/donations.inc to be present, containing settings for donation link display. An example file is provided in the project.sample directory.