Samples for All Invoice Operations including QR Code

- Invoice search method is static now
- Shipping Info has proper Phone Params
- Small Changes to Image Class
- Updated Sample Docs
This commit is contained in:
japatel
2014-11-19 12:15:35 -06:00
parent 383d12622b
commit eb6eb47336
24 changed files with 711 additions and 884 deletions

View File

@@ -20,7 +20,7 @@ class Image extends PPModel
*
* @return $this
*/
public function setImageBase64($imageBase64String)
public function setImage($imageBase64String)
{
$this->image = $imageBase64String;
return $this;
@@ -31,7 +31,7 @@ class Image extends PPModel
*
* @return string
*/
public function getImageBase64()
public function getImage()
{
return $this->image;
}
@@ -40,6 +40,7 @@ class Image extends PPModel
* Stores the Image to file
*
* @param string $name File Name
* @return string File name
*/
public function saveToFile($name = null)
{
@@ -48,7 +49,7 @@ class Image extends PPModel
$name = uniqid() . '.png';
}
// Save to File
file_put_contents($name, base64_decode($this->getImageBase64()));
file_put_contents($name, base64_decode($this->getImage()));
return $name;
}

View File

@@ -1096,7 +1096,7 @@ class Invoice extends ResourceModel
* @param PPRestCall $restCall is the Rest Call Service that is used to make rest calls
* @return InvoiceSearchResponse
*/
public function search($search, $apiContext = null, $restCall = null)
public static function search($search, $apiContext = null, $restCall = null)
{
ArgumentValidator::validate($search, 'search');
$payLoad = $search->toJSON();

View File

@@ -0,0 +1,120 @@
<?php
namespace PayPal\Api;
use PayPal\Common\PPModel;
/**
* Class InvoiceSearchResponse
*
*
*
* @package PayPal\Api
*
* @property int total_count
* @property \PayPal\Api\Invoice[] invoices
*/
class InvoiceSearchResponse extends PPModel
{
/**
* Total number of invoices.
*
* @param int $total_count
*
* @return $this
*/
public function setTotalCount($total_count)
{
$this->total_count = $total_count;
return $this;
}
/**
* Total number of invoices.
*
* @return int
*/
public function getTotalCount()
{
return $this->total_count;
}
/**
* Total number of invoices.
*
* @deprecated Instead use setTotalCount
*
* @param int $total_count
* @return $this
*/
public function setTotal_count($total_count)
{
$this->total_count = $total_count;
return $this;
}
/**
* Total number of invoices.
* @deprecated Instead use getTotalCount
*
* @return int
*/
public function getTotal_count()
{
return $this->total_count;
}
/**
* List of invoices belonging to a merchant.
*
* @param \PayPal\Api\Invoice[] $invoices
*
* @return $this
*/
public function setInvoices($invoices)
{
$this->invoices = $invoices;
return $this;
}
/**
* List of invoices belonging to a merchant.
*
* @return \PayPal\Api\Invoice[]
*/
public function getInvoices()
{
return $this->invoices;
}
/**
* Append Invoices to the list.
*
* @param \PayPal\Api\Invoice $invoice
* @return $this
*/
public function addInvoice($invoice)
{
if (!$this->getInvoices()) {
return $this->setInvoices(array($invoice));
} else {
return $this->setInvoices(
array_merge($this->getInvoices(), array($invoice))
);
}
}
/**
* Remove Invoices from the list.
*
* @param \PayPal\Api\Invoice $invoice
* @return $this
*/
public function removeInvoice($invoice)
{
return $this->setInvoices(
array_diff($this->getInvoices(), array($invoice))
);
}
}

View File

@@ -1,849 +0,0 @@
<?php
namespace PayPal\Api;
use PayPal\Common\PPModel;
/**
* Class InvoicingSearch
*
* Invoice search parameters.
*
* @package PayPal\Api
*
* @property string email
* @property string recipient_first_name
* @property string recipient_last_name
* @property string recipient_business_name
* @property string number
* @property string status
* @property \PayPal\Api\Currency lower_total_amount
* @property \PayPal\Api\Currency upper_total_amount
* @property string start_invoice_date
* @property string end_invoice_date
* @property string start_due_date
* @property string end_due_date
* @property string start_payment_date
* @property string end_payment_date
* @property string start_creation_date
* @property string end_creation_date
* @property \PayPal\Api\number page
* @property \PayPal\Api\number page_size
* @property bool total_count_required
*/
class InvoicingSearch extends PPModel
{
/**
* Initial letters of the email address.
*
* @param string $email
*
* @return $this
*/
public function setEmail($email)
{
$this->email = $email;
return $this;
}
/**
* Initial letters of the email address.
*
* @return string
*/
public function getEmail()
{
return $this->email;
}
/**
* Initial letters of the recipient's first name.
*
* @param string $recipient_first_name
*
* @return $this
*/
public function setRecipientFirstName($recipient_first_name)
{
$this->recipient_first_name = $recipient_first_name;
return $this;
}
/**
* Initial letters of the recipient's first name.
*
* @return string
*/
public function getRecipientFirstName()
{
return $this->recipient_first_name;
}
/**
* Initial letters of the recipient's first name.
*
* @deprecated Instead use setRecipientFirstName
*
* @param string $recipient_first_name
* @return $this
*/
public function setRecipient_first_name($recipient_first_name)
{
$this->recipient_first_name = $recipient_first_name;
return $this;
}
/**
* Initial letters of the recipient's first name.
* @deprecated Instead use getRecipientFirstName
*
* @return string
*/
public function getRecipient_first_name()
{
return $this->recipient_first_name;
}
/**
* Initial letters of the recipient's last name.
*
* @param string $recipient_last_name
*
* @return $this
*/
public function setRecipientLastName($recipient_last_name)
{
$this->recipient_last_name = $recipient_last_name;
return $this;
}
/**
* Initial letters of the recipient's last name.
*
* @return string
*/
public function getRecipientLastName()
{
return $this->recipient_last_name;
}
/**
* Initial letters of the recipient's last name.
*
* @deprecated Instead use setRecipientLastName
*
* @param string $recipient_last_name
* @return $this
*/
public function setRecipient_last_name($recipient_last_name)
{
$this->recipient_last_name = $recipient_last_name;
return $this;
}
/**
* Initial letters of the recipient's last name.
* @deprecated Instead use getRecipientLastName
*
* @return string
*/
public function getRecipient_last_name()
{
return $this->recipient_last_name;
}
/**
* Initial letters of the recipient's business name.
*
* @param string $recipient_business_name
*
* @return $this
*/
public function setRecipientBusinessName($recipient_business_name)
{
$this->recipient_business_name = $recipient_business_name;
return $this;
}
/**
* Initial letters of the recipient's business name.
*
* @return string
*/
public function getRecipientBusinessName()
{
return $this->recipient_business_name;
}
/**
* Initial letters of the recipient's business name.
*
* @deprecated Instead use setRecipientBusinessName
*
* @param string $recipient_business_name
* @return $this
*/
public function setRecipient_business_name($recipient_business_name)
{
$this->recipient_business_name = $recipient_business_name;
return $this;
}
/**
* Initial letters of the recipient's business name.
* @deprecated Instead use getRecipientBusinessName
*
* @return string
*/
public function getRecipient_business_name()
{
return $this->recipient_business_name;
}
/**
* The invoice number that appears on the invoice.
*
* @param string $number
*
* @return $this
*/
public function setNumber($number)
{
$this->number = $number;
return $this;
}
/**
* The invoice number that appears on the invoice.
*
* @return string
*/
public function getNumber()
{
return $this->number;
}
/**
* Status of the invoice.
* Valid Values: ["DRAFT", "SENT", "PAID", "MARKED_AS_PAID", "CANCELLED", "REFUNDED", "PARTIALLY_REFUNDED", "MARKED_AS_REFUNDED"]
*
* @param string $status
*
* @return $this
*/
public function setStatus($status)
{
$this->status = $status;
return $this;
}
/**
* Status of the invoice.
*
* @return string
*/
public function getStatus()
{
return $this->status;
}
/**
* Lower limit of total amount.
*
* @param \PayPal\Api\Currency $lower_total_amount
*
* @return $this
*/
public function setLowerTotalAmount($lower_total_amount)
{
$this->lower_total_amount = $lower_total_amount;
return $this;
}
/**
* Lower limit of total amount.
*
* @return \PayPal\Api\Currency
*/
public function getLowerTotalAmount()
{
return $this->lower_total_amount;
}
/**
* Lower limit of total amount.
*
* @deprecated Instead use setLowerTotalAmount
*
* @param \PayPal\Api\Currency $lower_total_amount
* @return $this
*/
public function setLower_total_amount($lower_total_amount)
{
$this->lower_total_amount = $lower_total_amount;
return $this;
}
/**
* Lower limit of total amount.
* @deprecated Instead use getLowerTotalAmount
*
* @return \PayPal\Api\Currency
*/
public function getLower_total_amount()
{
return $this->lower_total_amount;
}
/**
* Upper limit of total amount.
*
* @param \PayPal\Api\Currency $upper_total_amount
*
* @return $this
*/
public function setUpperTotalAmount($upper_total_amount)
{
$this->upper_total_amount = $upper_total_amount;
return $this;
}
/**
* Upper limit of total amount.
*
* @return \PayPal\Api\Currency
*/
public function getUpperTotalAmount()
{
return $this->upper_total_amount;
}
/**
* Upper limit of total amount.
*
* @deprecated Instead use setUpperTotalAmount
*
* @param \PayPal\Api\Currency $upper_total_amount
* @return $this
*/
public function setUpper_total_amount($upper_total_amount)
{
$this->upper_total_amount = $upper_total_amount;
return $this;
}
/**
* Upper limit of total amount.
* @deprecated Instead use getUpperTotalAmount
*
* @return \PayPal\Api\Currency
*/
public function getUpper_total_amount()
{
return $this->upper_total_amount;
}
/**
* Start invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $start_invoice_date
*
* @return $this
*/
public function setStartInvoiceDate($start_invoice_date)
{
$this->start_invoice_date = $start_invoice_date;
return $this;
}
/**
* Start invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getStartInvoiceDate()
{
return $this->start_invoice_date;
}
/**
* Start invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setStartInvoiceDate
*
* @param string $start_invoice_date
* @return $this
*/
public function setStart_invoice_date($start_invoice_date)
{
$this->start_invoice_date = $start_invoice_date;
return $this;
}
/**
* Start invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getStartInvoiceDate
*
* @return string
*/
public function getStart_invoice_date()
{
return $this->start_invoice_date;
}
/**
* End invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $end_invoice_date
*
* @return $this
*/
public function setEndInvoiceDate($end_invoice_date)
{
$this->end_invoice_date = $end_invoice_date;
return $this;
}
/**
* End invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getEndInvoiceDate()
{
return $this->end_invoice_date;
}
/**
* End invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setEndInvoiceDate
*
* @param string $end_invoice_date
* @return $this
*/
public function setEnd_invoice_date($end_invoice_date)
{
$this->end_invoice_date = $end_invoice_date;
return $this;
}
/**
* End invoice date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getEndInvoiceDate
*
* @return string
*/
public function getEnd_invoice_date()
{
return $this->end_invoice_date;
}
/**
* Start invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $start_due_date
*
* @return $this
*/
public function setStartDueDate($start_due_date)
{
$this->start_due_date = $start_due_date;
return $this;
}
/**
* Start invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getStartDueDate()
{
return $this->start_due_date;
}
/**
* Start invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setStartDueDate
*
* @param string $start_due_date
* @return $this
*/
public function setStart_due_date($start_due_date)
{
$this->start_due_date = $start_due_date;
return $this;
}
/**
* Start invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getStartDueDate
*
* @return string
*/
public function getStart_due_date()
{
return $this->start_due_date;
}
/**
* End invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $end_due_date
*
* @return $this
*/
public function setEndDueDate($end_due_date)
{
$this->end_due_date = $end_due_date;
return $this;
}
/**
* End invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getEndDueDate()
{
return $this->end_due_date;
}
/**
* End invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setEndDueDate
*
* @param string $end_due_date
* @return $this
*/
public function setEnd_due_date($end_due_date)
{
$this->end_due_date = $end_due_date;
return $this;
}
/**
* End invoice due date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getEndDueDate
*
* @return string
*/
public function getEnd_due_date()
{
return $this->end_due_date;
}
/**
* Start invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $start_payment_date
*
* @return $this
*/
public function setStartPaymentDate($start_payment_date)
{
$this->start_payment_date = $start_payment_date;
return $this;
}
/**
* Start invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getStartPaymentDate()
{
return $this->start_payment_date;
}
/**
* Start invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setStartPaymentDate
*
* @param string $start_payment_date
* @return $this
*/
public function setStart_payment_date($start_payment_date)
{
$this->start_payment_date = $start_payment_date;
return $this;
}
/**
* Start invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getStartPaymentDate
*
* @return string
*/
public function getStart_payment_date()
{
return $this->start_payment_date;
}
/**
* End invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $end_payment_date
*
* @return $this
*/
public function setEndPaymentDate($end_payment_date)
{
$this->end_payment_date = $end_payment_date;
return $this;
}
/**
* End invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getEndPaymentDate()
{
return $this->end_payment_date;
}
/**
* End invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setEndPaymentDate
*
* @param string $end_payment_date
* @return $this
*/
public function setEnd_payment_date($end_payment_date)
{
$this->end_payment_date = $end_payment_date;
return $this;
}
/**
* End invoice payment date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getEndPaymentDate
*
* @return string
*/
public function getEnd_payment_date()
{
return $this->end_payment_date;
}
/**
* Start invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $start_creation_date
*
* @return $this
*/
public function setStartCreationDate($start_creation_date)
{
$this->start_creation_date = $start_creation_date;
return $this;
}
/**
* Start invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getStartCreationDate()
{
return $this->start_creation_date;
}
/**
* Start invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setStartCreationDate
*
* @param string $start_creation_date
* @return $this
*/
public function setStart_creation_date($start_creation_date)
{
$this->start_creation_date = $start_creation_date;
return $this;
}
/**
* Start invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getStartCreationDate
*
* @return string
*/
public function getStart_creation_date()
{
return $this->start_creation_date;
}
/**
* End invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @param string $end_creation_date
*
* @return $this
*/
public function setEndCreationDate($end_creation_date)
{
$this->end_creation_date = $end_creation_date;
return $this;
}
/**
* End invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @return string
*/
public function getEndCreationDate()
{
return $this->end_creation_date;
}
/**
* End invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
*
* @deprecated Instead use setEndCreationDate
*
* @param string $end_creation_date
* @return $this
*/
public function setEnd_creation_date($end_creation_date)
{
$this->end_creation_date = $end_creation_date;
return $this;
}
/**
* End invoice creation date. Date format yyyy-MM-dd z, as defined in [ISO8601](http://tools.ietf.org/html/rfc3339#section-5.6).
* @deprecated Instead use getEndCreationDate
*
* @return string
*/
public function getEnd_creation_date()
{
return $this->end_creation_date;
}
/**
* Offset of the search results.
*
* @param \PayPal\Api\number $page
*
* @return $this
*/
public function setPage($page)
{
$this->page = $page;
return $this;
}
/**
* Offset of the search results.
*
* @return \PayPal\Api\number
*/
public function getPage()
{
return $this->page;
}
/**
* Page size of the search results.
*
* @param \PayPal\Api\number $page_size
*
* @return $this
*/
public function setPageSize($page_size)
{
$this->page_size = $page_size;
return $this;
}
/**
* Page size of the search results.
*
* @return \PayPal\Api\number
*/
public function getPageSize()
{
return $this->page_size;
}
/**
* Page size of the search results.
*
* @deprecated Instead use setPageSize
*
* @param \PayPal\Api\number $page_size
* @return $this
*/
public function setPage_size($page_size)
{
$this->page_size = $page_size;
return $this;
}
/**
* Page size of the search results.
* @deprecated Instead use getPageSize
*
* @return \PayPal\Api\number
*/
public function getPage_size()
{
return $this->page_size;
}
/**
* A flag indicating whether total count is required in the response.
*
* @param bool $total_count_required
*
* @return $this
*/
public function setTotalCountRequired($total_count_required)
{
$this->total_count_required = $total_count_required;
return $this;
}
/**
* A flag indicating whether total count is required in the response.
*
* @return bool
*/
public function getTotalCountRequired()
{
return $this->total_count_required;
}
/**
* A flag indicating whether total count is required in the response.
*
* @deprecated Instead use setTotalCountRequired
*
* @param bool $total_count_required
* @return $this
*/
public function setTotal_count_required($total_count_required)
{
$this->total_count_required = $total_count_required;
return $this;
}
/**
* A flag indicating whether total count is required in the response.
* @deprecated Instead use getTotalCountRequired
*
* @return bool
*/
public function getTotal_count_required()
{
return $this->total_count_required;
}
}

View File

@@ -14,6 +14,7 @@ use PayPal\Common\PPModel;
* @property string first_name
* @property string last_name
* @property string business_name
* @property \PayPal\Api\Phone phone
* @property \PayPal\Api\Address address
*/
class ShippingInfo extends PPModel
@@ -166,6 +167,7 @@ class ShippingInfo extends PPModel
*
*
* @param \PayPal\Api\Phone $phone
* @return $this
*/
public function setPhone($phone)
{

View File

@@ -576,6 +576,46 @@ f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/DeleteInvoice.php",
"projectPath": "invoice/DeleteInvoice.php",
"targetPath": "invoice/DeleteInvoice",
"pageTitle": "invoice/DeleteInvoice",
"title": "DeleteInvoice"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Delete Invoice Sample",
"slug": "delete-invoice-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Delete Invoice",
"slug": "delete-invoice"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
@@ -656,6 +696,102 @@ f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/RecordPayment.php",
"projectPath": "invoice/RecordPayment.php",
"targetPath": "invoice/RecordPayment",
"pageTitle": "invoice/RecordPayment",
"title": "RecordPayment"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Record Payment Sample",
"slug": "record-payment-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Record Object",
"slug": "record-object"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Record Payment for Invoice",
"slug": "record-payment-for-invoice"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/RecordRefund.php",
"projectPath": "invoice/RecordRefund.php",
"targetPath": "invoice/RecordRefund",
"pageTitle": "invoice/RecordRefund",
"title": "RecordRefund"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Record Refund Sample",
"slug": "record-refund-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Record Object",
"slug": "record-object"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Record Refund for Invoice",
"slug": "record-refund-for-invoice"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
@@ -685,14 +821,6 @@ f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Retrieve Invoice",
"slug": "retrieve-invoice"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
@@ -712,6 +840,110 @@ f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/RetrieveQRCode.php",
"projectPath": "invoice/RetrieveQRCode.php",
"targetPath": "invoice/RetrieveQRCode",
"pageTitle": "invoice/RetrieveQRCode",
"title": "RetrieveQRCode"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Retrieve QR Code for Invoice Sample",
"slug": "retrieve-qr-code-for-invoice-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Retrieve QR Code of Sent Invoice",
"slug": "retrieve-qr-code-of-sent-invoice"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Optionally Save to File",
"slug": "optionally-save-to-file"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Show the Image",
"slug": "show-the-image"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/SearchInvoices.php",
"projectPath": "invoice/SearchInvoices.php",
"targetPath": "invoice/SearchInvoices",
"pageTitle": "invoice/SearchInvoices",
"title": "SearchInvoices"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Search Invoices Sample",
"slug": "search-invoices-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Search Object",
"slug": "search-object"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Search Invoices",
"slug": "search-invoices"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
@@ -744,16 +976,56 @@ f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3
"type": "heading",
"data": {
"level": 3,
"title": "Retrieve Invoice",
"slug": "retrieve-invoice"
"title": "Send Invoice",
"slug": "send-invoice"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "/Users/japatel/Documents/workspace/Server-SDK/PayPal-PHP-SDK/sample/invoice/UpdateInvoice.php",
"projectPath": "invoice/UpdateInvoice.php",
"targetPath": "invoice/UpdateInvoice",
"pageTitle": "invoice/UpdateInvoice",
"title": "UpdateInvoice"
},
"depth": 2,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Update Invoice Sample",
"slug": "update-invoice-sample"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Update Invoice",
"slug": "update-invoice"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Send Invoice",
"slug": "send-invoice"
"title": "Update Invoice",
"slug": "update-invoice"
},
"depth": 3
}

View File

@@ -75,10 +75,10 @@ detailed breakdown of invoice</p></div></div><div class="code"><div class="wrapp
<p>Create an invoice by calling the invoice-&gt;create() method
with a valid ApiContext (See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoice</span>-&gt;create(<span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Invoice Creation"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$request</span>, <span class="hljs-variable">$ex</span>);
ResultPrinter::printError(<span class="hljs-string">"Create Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$request</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Invoice Creation"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$request</span>, <span class="hljs-variable">$invoice</span>);
ResultPrinter::printResult(<span class="hljs-string">"Create Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$request</span>, <span class="hljs-variable">$invoice</span>);
<span class="hljs-keyword">return</span> <span class="hljs-variable">$invoice</span>;</div></div></div></div></body></html>

View File

@@ -0,0 +1,20 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/DeleteInvoice</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/DeleteInvoice"><meta name="groc-project-path" content="invoice/DeleteInvoice.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/DeleteInvoice.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="delete-invoice-sample">Delete Invoice Sample</h1>
<p>This sample code demonstrate how you can delete
an invoice.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'CreateInvoice.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">CancelNotification</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="delete-invoice">Delete Invoice</h3>
<p>Delete invoice object by calling the
<code>delete</code> method
on the Invoice class by passing a valid
notification object
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$deleteStatus</span> = <span class="hljs-variable">$invoice</span>-&gt;delete(<span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Delete Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$deleteStatus</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Delete Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-keyword">null</span>, <span class="hljs-keyword">null</span>);</div></div></div></div></body></html>

View File

@@ -8,7 +8,7 @@ all invoice from history.</p></div></div><div class="code"><div class="wrapper">
<p>Retrieve the Invoice History object by calling the
static <code>get_all</code> method on the Invoice class.
Refer the method doc for valid values for keys
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoices</span> = Invoice::get_all(<span class="hljs-variable">$apiContext</span>);
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoices</span> = Invoice::getAll(<span class="hljs-keyword">array</span>(<span class="hljs-string">'page'</span> =&gt; <span class="hljs-number">0</span>, <span class="hljs-string">'page_size'</span> =&gt; <span class="hljs-number">4</span>, <span class="hljs-string">'total_count_required'</span> =&gt; <span class="hljs-string">"true"</span>), <span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Lookup Invoice History"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);

View File

@@ -0,0 +1,30 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/RecordPayment</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/RecordPayment"><meta name="groc-project-path" content="invoice/RecordPayment.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/RecordPayment.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="record-payment-sample">Record Payment Sample</h1>
<p>This sample code demonstrate how you can record
an invoice as paid.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'SendInvoice.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">PaymentDetail</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="record-object">Record Object</h3>
<p>Create a PaymentDetail object, and fill in the required fields
You can use the new way of injecting json directly to the object.</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$record</span> = <span class="hljs-keyword">new</span> PaymentDetail(
<span class="hljs-string">'{
"method" : "CASH",
"date" : "2014-07-06 03:30:00 PST",
"note" : "Cash received."
}'</span>
);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="record-payment-for-invoice">Record Payment for Invoice</h3>
<p>Record a payment on invoice object by calling the
<code>recordPayment</code> method
on the Invoice class by passing a valid
notification object
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$recordStatus</span> = <span class="hljs-variable">$invoice</span>-&gt;recordPayment(<span class="hljs-variable">$record</span>, <span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Payment for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$recordStatus</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Payment for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$record</span>, <span class="hljs-keyword">null</span>);
<span class="hljs-keyword">return</span> <span class="hljs-variable">$invoice</span>;</div></div></div></div></body></html>

View File

@@ -0,0 +1,29 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/RecordRefund</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/RecordRefund"><meta name="groc-project-path" content="invoice/RecordRefund.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/RecordRefund.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="record-refund-sample">Record Refund Sample</h1>
<p>This sample code demonstrate how you can record
an invoice as refunded.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'RecordPayment.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">RefundDetail</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="record-object">Record Object</h3>
<p>Create a RefundDetail object, and fill in the required fields
You can use the new way of injecting json directly to the object.</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$refund</span> = <span class="hljs-keyword">new</span> RefundDetail(
<span class="hljs-string">'{
"date" : "2014-07-06 03:30:00 PST",
"note" : "Refund provided by cash."
}'</span>
);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="record-refund-for-invoice">Record Refund for Invoice</h3>
<p>Record a refund on invoice object by calling the
<code>recordRefund</code> method
on the Invoice class by passing a valid
notification object
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$refundStatus</span> = <span class="hljs-variable">$invoice</span>-&gt;recordRefund(<span class="hljs-variable">$refund</span>, <span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Refund for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$refundStatus</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Refund for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$refund</span>, <span class="hljs-keyword">null</span>);
<span class="hljs-keyword">return</span> <span class="hljs-variable">$invoice</span>;</div></div></div></div></body></html>

View File

@@ -6,12 +6,7 @@ an invoice to the payer</p></div></div><div class="code"><div class="wrapper"><s
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Notification</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="retrieve-invoice">Retrieve Invoice</h3>
<p>Retrieve the invoice object by calling the
static <code>get</code> method
on the Invoice class by passing a valid
Invoice ID
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoice</span> = Invoice::get(<span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$apiContext</span>);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="notification-object">Notification Object</h3>
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="notification-object">Notification Object</h3>
<p>This would send a notification to both merchant as well
the payer. The information of merchant
and payer is retrieved from the invoice details</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$notify</span> = <span class="hljs-keyword">new</span> Notification();

View File

@@ -0,0 +1,27 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/RetrieveQRCode</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/RetrieveQRCode"><meta name="groc-project-path" content="invoice/RetrieveQRCode.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/RetrieveQRCode.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="retrieve-qr-code-for-invoice-sample">Retrieve QR Code for Invoice Sample</h1>
<p>Specify an invoice ID to get a QR code (image) that corresponds to the invoice ID. A QR code for an invoice can be added to a paper or PDF invoice. When a customer uses their mobile device to scan the QR code, the customer is redirected to the PayPal mobile payment flow, where they can pay online with PayPal or a credit card.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'SendInvoice.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Notification</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="retrieve-qr-code-of-sent-invoice">Retrieve QR Code of Sent Invoice</h3>
<p>Retrieve QR Code of Sent Invoice by calling the
<code>qrCode</code> method
on the Invoice class by passing a valid
notification object
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$image</span> = Invoice::qrCode(<span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-keyword">array</span>(<span class="hljs-string">'height'</span> =&gt; <span class="hljs-string">'300'</span>, <span class="hljs-string">'width'</span> =&gt; <span class="hljs-string">'300'</span>), <span class="hljs-variable">$apiContext</span>);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="optionally-save-to-file">Optionally Save to File</h3>
<p>This is not a required step. However, if you want to store this image as a file, you can use
&#39;saveToFile&#39; method with proper file name.
This will save the image as /samples/invoice/images/sample.png</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$path</span> = <span class="hljs-variable">$image</span>-&gt;saveToFile(<span class="hljs-string">"images/sample.png"</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Retrieved QR Code for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-keyword">null</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Retrieved QR Code for Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-keyword">null</span>, <span class="hljs-variable">$image</span>);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="show-the-image">Show the Image</h3>
<p>In PHP, there are many ways to present an images.
One of the ways, you could directly inject the base64-encoded string
with proper image information in front of it.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-keyword">echo</span> <span class="hljs-string">'&lt;img src="data:image/png;base64,'</span>. <span class="hljs-variable">$image</span>-&gt;getImage() . <span class="hljs-string">'" alt="Invoice QR Code" /&gt;'</span>;</div></div></div></div></body></html>

View File

@@ -0,0 +1,27 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/SearchInvoices</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/SearchInvoices"><meta name="groc-project-path" content="invoice/SearchInvoices.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/SearchInvoices.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="search-invoices-sample">Search Invoices Sample</h1>
<p>This sample code demonstrate how you can
search invoices from history.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'CreateInvoice.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Search</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="search-object">Search Object</h3>
<p>Fill up your search criteria for Invoice search.
Using the new way to inject raw json string to constructor</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$search</span> = <span class="hljs-keyword">new</span> Search(
<span class="hljs-string">'{
"start_invoice_date" : "2010-05-10 PST",
"end_invoice_date" : "2019-05-11 PST",
"page" : 1,
"page_size" : 20,
"total_count_required" : true
}'</span>
);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="search-invoices">Search Invoices</h3>
<p>Retrieve the Invoice History object by calling the
static <code>search</code> method on the Invoice class.
Refer the method doc for valid values for keys
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoices</span> = Invoice::search(<span class="hljs-variable">$search</span>, <span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Search Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Search Invoice"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$search</span>, <span class="hljs-variable">$invoices</span>);</div></div></div></div></body></html>

View File

@@ -5,12 +5,7 @@ a legitimate invoice to the payer</p></div></div><div class="code"><div class="w
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="retrieve-invoice">Retrieve Invoice</h3>
<p>Retrieve the invoice object by calling the
static <code>get</code> method
on the Invoice class by passing a valid
Invoice ID
(See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoice</span> = Invoice::get(<span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$apiContext</span>);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="send-invoice">Send Invoice</h3>
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="send-invoice">Send Invoice</h3>
<p>Send a legitimate invoice to the payer
with a valid ApiContext (See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$sendStatus</span> = <span class="hljs-variable">$invoice</span>-&gt;send(<span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {

View File

@@ -0,0 +1,18 @@
<!DOCTYPE html><html lang="en"><head><title>invoice/UpdateInvoice</title></head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"><meta name="groc-relative-root" content="../"><meta name="groc-document-path" content="invoice/UpdateInvoice"><meta name="groc-project-path" content="invoice/UpdateInvoice.php"><link rel="stylesheet" type="text/css" media="all" href="../assets/style.css"><script type="text/javascript" src="../assets/behavior.js"></script><body><div id="meta"><div class="file-path">invoice/UpdateInvoice.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="hljs-preprocessor">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="update-invoice-sample">Update Invoice Sample</h1>
<p>This sample code demonstrate how you can update
an invoice.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-comment">/**<span class="hljs-phpdoc"> @var</span> Invoice $invoice */</span>
<span class="hljs-variable">$invoice</span> = <span class="hljs-keyword">require</span> <span class="hljs-string">'CreateInvoice.php'</span>;
<span class="hljs-keyword">use</span> <span class="hljs-title">PayPal</span>\<span class="hljs-title">Api</span>\<span class="hljs-title">Invoice</span>;</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="update-invoice">Update Invoice</h3>
<p>Lets update some information</p></div></div><div class="code"><div class="wrapper"><span class="hljs-variable">$invoice</span>-&gt;setInvoiceDate(<span class="hljs-string">"2014-11-16 PST"</span>);</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><p>For Sample Purposes Only.</p></div></div><div class="code"><div class="wrapper"><span class="hljs-variable">$request</span> = <span class="hljs-keyword">clone</span> <span class="hljs-variable">$invoice</span>;
<span class="hljs-keyword">try</span> {</div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="update-invoice">Update Invoice</h3>
<p>Update an invoice by calling the invoice-&gt;update() method
with a valid ApiContext (See bootstrap.php for more on <code>ApiContext</code>)</p></div></div><div class="code"><div class="wrapper"> <span class="hljs-variable">$invoice</span>-&gt;update(<span class="hljs-variable">$apiContext</span>);
} <span class="hljs-keyword">catch</span> (<span class="hljs-keyword">Exception</span> <span class="hljs-variable">$ex</span>) {
ResultPrinter::printError(<span class="hljs-string">"Invoice Updated"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-keyword">null</span>, <span class="hljs-variable">$request</span>, <span class="hljs-variable">$ex</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-number">1</span>);
}
ResultPrinter::printResult(<span class="hljs-string">"Invoice Updated"</span>, <span class="hljs-string">"Invoice"</span>, <span class="hljs-variable">$invoice</span>-&gt;getId(), <span class="hljs-variable">$request</span>, <span class="hljs-variable">$invoice</span>);
<span class="hljs-keyword">return</span> <span class="hljs-variable">$invoice</span>;</div></div></div></div></body></html>

View File

@@ -102,10 +102,10 @@ try {
// with a valid ApiContext (See bootstrap.php for more on `ApiContext`)
$invoice->create($apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Invoice Creation", "Invoice", null, $request, $ex);
ResultPrinter::printError("Create Invoice", "Invoice", null, $request, $ex);
exit(1);
}
ResultPrinter::printResult("Invoice Creation", "Invoice", $invoice->getId(), $request, $invoice);
ResultPrinter::printResult("Create Invoice", "Invoice", $invoice->getId(), $request, $invoice);
return $invoice;

View File

@@ -0,0 +1,27 @@
<?php
// # Delete Invoice Sample
// This sample code demonstrate how you can delete
// an invoice.
/** @var Invoice $invoice */
$invoice = require 'CreateInvoice.php';
use PayPal\Api\Invoice;
use PayPal\Api\CancelNotification;
try {
// ### Delete Invoice
// Delete invoice object by calling the
// `delete` method
// on the Invoice class by passing a valid
// notification object
// (See bootstrap.php for more on `ApiContext`)
$deleteStatus = $invoice->delete($apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Delete Invoice", "Invoice", null, $deleteStatus, $ex);
exit(1);
}
ResultPrinter::printResult("Delete Invoice", "Invoice", $invoice->getId(), null, null);

View File

@@ -14,7 +14,7 @@ try {
// static `get_all` method on the Invoice class.
// Refer the method doc for valid values for keys
// (See bootstrap.php for more on `ApiContext`)
$invoices = Invoice::getAll(array('page' => 0, 'page_size' => 4, 'total_count_required' => true), $apiContext);
$invoices = Invoice::getAll(array('page' => 0, 'page_size' => 4, 'total_count_required' => "true"), $apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Lookup Invoice History", "Invoice", null, null, $ex);
exit(1);

View File

@@ -0,0 +1,39 @@
<?php
// # Record Payment Sample
// This sample code demonstrate how you can record
// an invoice as paid.
/** @var Invoice $invoice */
$invoice = require 'SendInvoice.php';
use PayPal\Api\Invoice;
use PayPal\Api\PaymentDetail;
try {
// ### Record Object
// Create a PaymentDetail object, and fill in the required fields
// You can use the new way of injecting json directly to the object.
$record = new PaymentDetail(
'{
"method" : "CASH",
"date" : "2014-07-06 03:30:00 PST",
"note" : "Cash received."
}'
);
// ### Record Payment for Invoice
// Record a payment on invoice object by calling the
// `recordPayment` method
// on the Invoice class by passing a valid
// notification object
// (See bootstrap.php for more on `ApiContext`)
$recordStatus = $invoice->recordPayment($record, $apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Payment for Invoice", "Invoice", null, $recordStatus, $ex);
exit(1);
}
ResultPrinter::printResult("Payment for Invoice", "Invoice", $invoice->getId(), $record, null);
return $invoice;

View File

@@ -0,0 +1,38 @@
<?php
// # Record Refund Sample
// This sample code demonstrate how you can record
// an invoice as refunded.
/** @var Invoice $invoice */
$invoice = require 'RecordPayment.php';
use PayPal\Api\Invoice;
use PayPal\Api\RefundDetail;
try {
// ### Record Object
// Create a RefundDetail object, and fill in the required fields
// You can use the new way of injecting json directly to the object.
$refund = new RefundDetail(
'{
"date" : "2014-07-06 03:30:00 PST",
"note" : "Refund provided by cash."
}'
);
// ### Record Refund for Invoice
// Record a refund on invoice object by calling the
// `recordRefund` method
// on the Invoice class by passing a valid
// notification object
// (See bootstrap.php for more on `ApiContext`)
$refundStatus = $invoice->recordRefund($refund, $apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Refund for Invoice", "Invoice", null, $refundStatus, $ex);
exit(1);
}
ResultPrinter::printResult("Refund for Invoice", "Invoice", $invoice->getId(), $refund, null);
return $invoice;

View File

@@ -37,5 +37,5 @@ ResultPrinter::printResult("Retrieved QR Code for Invoice", "Invoice", $invoice-
// In PHP, there are many ways to present an images.
// One of the ways, you could directly inject the base64-encoded string
// with proper image information in front of it.
echo '<img src="data:image/png;base64,'. $image->getImageBase64() . '" alt="Invoice QR Code" />';
echo '<img src="data:image/png;base64,'. $image->getImage() . '" alt="Invoice QR Code" />';

View File

@@ -0,0 +1,36 @@
<?php
// # Search Invoices Sample
// This sample code demonstrate how you can
// search invoices from history.
/** @var Invoice $invoice */
$invoice = require 'CreateInvoice.php';
use PayPal\Api\Invoice;
use PayPal\Api\Search;
try {
// ### Search Object
// Fill up your search criteria for Invoice search.
// Using the new way to inject raw json string to constructor
$search = new Search(
'{
"start_invoice_date" : "2010-05-10 PST",
"end_invoice_date" : "2019-05-11 PST",
"page" : 1,
"page_size" : 20,
"total_count_required" : true
}'
);
// ### Search Invoices
// Retrieve the Invoice History object by calling the
// static `search` method on the Invoice class.
// Refer the method doc for valid values for keys
// (See bootstrap.php for more on `ApiContext`)
$invoices = Invoice::search($search, $apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Search Invoice", "Invoice", null, null, $ex);
exit(1);
}
ResultPrinter::printResult("Search Invoice", "Invoice", null, $search, $invoices);

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB