// Include required library files.
require_once '../includes/config.php';
require_once '../includes/paypal.class.php';
require_once '../includes/paypal.adaptive.class.php';
// Create PayPal object.
$PayPalConfig = array('Sandbox' => $sandbox, 'DeveloperAccountEmail' => $developer_account_email, 'ApplicationID' => $application_id, 'DeviceID' => $device_id, 'IPAddress' => $_SERVER['REMOTE_ADDR'], 'APIUsername' => $api_username, 'APIPassword' => $api_password, 'APISignature' => $api_signature, 'APISubject' => $api_subject);
$PayPal = new PayPal_Adaptive($PayPalConfig);
// Prepare request arrays
$SPOFields = array('PayKey' => '', 'ShippingAddressID' => '');
$DisplayOptions = array('EmailHeaderImageURL' => '', 'EmailMarketingImageURL' => '', 'HeaderImageURL' => '', 'BusinessName' => '');
$InstitutionCustomer = array('CountryCode' => '', 'DisplayName' => '', 'InstitutionCustomerEmail' => '', 'FirstName' => '', 'LastName' => '', 'InstitutionCustomerID' => '', 'InstitutionID' => '');
$SenderOptions = array('RequireShippingAddressSelection' => '');
// Begin loop to populate receiver options.
$ReceiverOptions = array();
$ReceiverOption = array('Description' => '', 'CustomID' => '');
$InvoiceData = array('TotalTax' => '', 'TotalShipping' => '');
$InvoiceItems = array();
$InvoiceItem = array('Name' => '', 'Identifier' => '', 'Price' => '', 'ItemPrice' => '', 'ItemCount' => '');
array_push($InvoiceItems, $InvoiceItem);
$ReceiverIdentifier = array('Email' => '', 'PhoneCountryCode' => '', 'PhoneNumber' => '', 'PhoneExtension' => '');
$ReceiverOption['InvoiceData'] = $InvoiceData;
$ReceiverOption['InvoiceItems'] = $InvoiceItems;
$ReceiverOption['ReceiverIdentifier'] = $ReceiverIdentifier;
array_push($ReceiverOptions, $ReceiverOption);
// End receiver options loop
$PayPalRequestData = array('SPOFields' => $SPOFields, 'DisplayOptions' => $DisplayOptions, 'InstitutionCustomer' => $InstitutionCustomer, 'SenderOptions' => $SenderOptions, 'ReceiverOptions' => $ReceiverOptions);
// Pass data into class for processing with PayPal and load the response array into $PayPalResult
$PayPalResult = $PayPal->SetPaymentOptions($PayPalRequestData);
// Write the contents of the response array to the screen for demo purposes.
echo '<pre />';
print_r($PayPalResult);