| 
<?php
 /**
 * @author Mubashir Ali (Lahore, Pakistan)
 * [email protected]
 * @category Paypal Invoice API
 * @@abstract This class performs the PAYPAL INVOICE API's operations
 * @since 23-12-2011
 * @version 1.0
 * @todo Basic functionalities are performed - workflow of pending tasks still left
 * There is sample Array data is also entered to view the demo
 */
 
 $API_Username = "xxxxxxxxxxxxxxxxx.xxx.xxx";
 $API_Password = "xxxxxxxxxx";
 $Signature    = "xxxxxxxxxxxxxxxxx.xxxxxxxxxxxxx-xxxxxxxxxxxxx-xxxxxxxxxx";
 $business = "[email protected]";
 
 require_once('class.invoice.php');
 
 $ppInv = new PaypalInvoiceAPI("sandbox");       //pass 'live' for actual paypal account
 
 /**
 * Populate Data
 */
 $aryData['language'] = "en_US";
 $aryData['merchantEmail'] = $business;
 
 $aryData['payerEmail'] = "[email protected]";
 $aryData['currencyCode'] = "USD";
 //$aryData['orderId'] = "0001";
 $aryData['orderId'] = strtotime('now');
 $aryData['invoiceDate'] = "2011-12-31T05:38:48Z";
 $aryData['dueDate'] = "2011-12-31T05:38:48Z";
 $aryData['paymentTerms'] = "Net45";   //[DueOnReceipt, DueOnDateSpecified, Net10, Net15, Net30, Net45]
 $aryData['discountPercent'] = "5";
 $aryData['discountAmount'] = "5.00";
 $aryData['invoiceTerms'] = "These are Inovice Terms and Conditions";
 $aryData['invoiceNote'] = "These are Invoice notes";
 $aryData['merchantMemo'] = "This is Merchant Memo";
 $aryData['shippingAmount'] = "10.00";
 $aryData['shippingTaxName'] = "S Tax Name";
 $aryData['shippingTaxRate'] = "5.00";
 $aryData['logoURL'] = "Company Logo URL";
 
 $aryData['merchantFirstName'] = "Merchant First Name";
 $aryData['merchantLastName'] = "Merchant Last Name";
 $aryData['merchantBusinessName'] = "Merchant Business Name";
 $aryData['merchantPhone'] = "132131232-1321-3131";
 $aryData['merchantFax'] = "12-312-312-123";
 $aryData['merchantWebsite'] = "Merchant Website";
 $aryData['merchantCustomValue'] = "Company Custom Value";
 
 $aryData['merchantLine1'] = "Merchant Address Line 1";
 $aryData['merchantLine2'] = "Merchant Address Line 2";
 $aryData['merchantCity'] = "Merchant City";
 $aryData['merchantState'] = "Merchant State";
 $aryData['merchantPostalCode'] = "Zip Code";
 $aryData['merchantCountryCode'] = "US";
 
 $aryData['billingFirstName'] = "Billing First Name";
 $aryData['billingLastName'] = "Billing Last Name";
 $aryData['billingBusinessName'] = "Billing Business Name";
 $aryData['billingPhone'] = "Billing Phone";
 $aryData['billingFax'] = "Billing Fax";
 $aryData['billingWebsite'] = "Billing Website";
 $aryData['billingCustomValue'] = "Billing Custom Value";
 
 $aryData['billingLine1'] = "Billing Line 1";
 $aryData['billingLine2'] = "Billing Line 2";
 $aryData['billingCity'] = "Billing City";
 $aryData['billingState'] = "Billing State";
 $aryData['billingPostalCode'] = "Billing Postal Code";
 $aryData['billingCountryCode'] = "US";
 
 $aryData['shippingFirstName'] = "Shipping First Name";
 $aryData['shippingLastName'] = "Shipping Last Name";
 $aryData['shippingBusinessName'] = "Shipping Business Name";
 $aryData['shippingPhone'] = "Shipping Phone";
 $aryData['shippingFax'] = "Shipping Fax";
 $aryData['shippingWebsite'] = "Shipping Website";
 $aryData['shippingCustomValue'] = "Shipping Custom Value";
 
 $aryData['shippingLine1'] = "Shipping Line 1";
 $aryData['shippingLine2'] = "Shipping Line 2";
 $aryData['shippingCity'] = "Shipping City";
 $aryData['shippingState'] = "Shipping State";
 $aryData['shippingPostalCode'] = "Shipping Postal Code";
 $aryData['shippingCountryCode'] = "US";
 
 $aryItems[0]['name'] = "Item 1";
 $aryItems[0]['description'] = "Item 1 Description";
 $aryItems[0]['date'] = "2011-12-31T05:38:48Z";
 $aryItems[0]['quantity'] = "2";
 $aryItems[0]['unitprice'] = "10.00";
 $aryItems[0]['taxName'] = "I Tax Name";
 $aryItems[0]['taxRate'] = "5.00";
 
 /**
 * Create Invoice Task
 */
 echo "<br /><br />---------------------------------Send Invoice API-------------------------------------<br /><br />";
 $res = $ppInv->doCreateInvoice($aryData, $aryItems);
 
 //    echo "<pre>";
 //    print_r($res);
 //    echo "</pre>";
 
 if($res['responseEnvelope.ack']== "Success")
 {
 echo "<br />Success Creating Invoice: '{$res['invoiceID']}'";
 
 echo "<br /><br />---------------------------------Send Invoice API-------------------------------------<br /><br />";
 
 $res_send = $ppInv->doSendInvoice($res['invoiceID']);
 
 //    echo "<pre>";
 //    print_r($res_send);
 //    echo "</pre>";
 
 if($res_send['responseEnvelope.ack']== "Success")
 {
 echo "<br />Success Sending Invoice";
 }
 else
 {
 //Get Error String
 echo $ppInv->formatErrorMessages($res_send);
 }
 }
 else
 {
 //Get Error String
 echo $ppInv->formatErrorMessages($res);
 }
 
 
 ?>
 |