Adding item details to create payment samples

This commit is contained in:
aydiv
2013-09-19 15:48:38 +05:30
parent cf076b462e
commit 80b70cb134
8 changed files with 602 additions and 203 deletions

View File

@@ -9,25 +9,16 @@
// API used: /v1/payments/payment
require __DIR__ . '/../bootstrap.php';
use PayPal\Api\Address;
use PayPal\Api\Amount;
use PayPal\Api\Details;
use PayPal\Api\Item;
use PayPal\Api\ItemList;
use PayPal\Api\CreditCard;
use PayPal\Api\Payer;
use PayPal\Api\Payment;
use PayPal\Api\FundingInstrument;
use PayPal\Api\Transaction;
// ### Address
// [Optional] Billing address associated with card.
$addr = new Address();
$addr->setLine1("3909 Witmer Road")
->setLine2("Niagara Falls")
->setCity("Niagara Falls")
->setState("NY")
->setPostalCode("14305")
->setCountryCode("US")
->setPhone("716-298-1822");
// ### CreditCard
// A resource representing a credit card that can be
// used to fund a payment.
@@ -38,8 +29,7 @@ $card->setType("visa")
->setExpireYear("2019")
->setCvv2("012")
->setFirstName("Joe")
->setLastName("Shopper")
->setBillingAddress($addr);
->setLastName("Shopper");
// ### FundingInstrument
// A resource representing a Payer's funding instrument.
@@ -56,13 +46,40 @@ $payer = new Payer();
$payer->setPaymentMethod("credit_card")
->setFundingInstruments(array($fi));
// ### Itemized information
// (Optional) Lets you specify item wise
// information
$item1 = new Item();
$item1->setName('Ground Coffee 40 oz')
->setCurrency('USD')
->setQuantity(1)
->setPrice('7.50');
$item2 = new Item();
$item2->setName('Granola bars')
->setCurrency('USD')
->setQuantity(5)
->setPrice('2.00');
$itemList = new ItemList();
$itemList->setItems(array($item1, $item2));
// ### Additional payment details
// Use this optional field to set additional
// payment information such as tax, shipping
// charges etc.
$details = new Details();
$details->setShipping('1.20')
->setTax('1.30')
->setSubtotal('17.50');
// ### Amount
// Lets you specify a payment amount.
// You can also specify additional details
// such as shipping, tax.
$amount = new Amount();
$amount->setCurrency("USD")
->setTotal("1.00");
->setTotal("20.00")
->setDetails($details);
// ### Transaction
// A transaction defines the contract of a
@@ -70,6 +87,7 @@ $amount->setCurrency("USD")
// is fulfilling it.
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($itemList)
->setDescription("Payment description");
// ### Payment

View File

@@ -7,6 +7,9 @@
require __DIR__ . '/../bootstrap.php';
use PayPal\Api\Amount;
use PayPal\Api\Details;
use PayPal\Api\Item;
use PayPal\Api\ItemList;
use PayPal\Api\Payer;
use PayPal\Api\Payment;
use PayPal\Api\RedirectUrls;
@@ -20,13 +23,40 @@ session_start();
$payer = new Payer();
$payer->setPaymentMethod("paypal");
// ### Itemized information
// (Optional) Lets you specify item wise
// information
$item1 = new Item();
$item1->setName('Ground Coffee 40 oz')
->setCurrency('USD')
->setQuantity(1)
->setPrice('7.50');
$item2 = new Item();
$item2->setName('Granola bars')
->setCurrency('USD')
->setQuantity(5)
->setPrice('2.00');
$itemList = new ItemList();
$itemList->setItems(array($item1, $item2));
// ### Additional payment details
// Use this optional field to set additional
// payment information such as tax, shipping
// charges etc.
$details = new Details();
$details->setShipping('1.20')
->setTax('1.30')
->setSubtotal('17.50');
// ### Amount
// Lets you specify a payment amount.
// You can also specify additional details
// such as shipping, tax.
$amount = new Amount();
$amount->setCurrency("USD")
->setTotal("1.00");
->setTotal("20.00")
->setDetails($details);
// ### Transaction
// A transaction defines the contract of a
@@ -34,6 +64,7 @@ $amount->setCurrency("USD")
// is fulfilling it.
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($itemList)
->setDescription("Payment description");
// ### Redirect urls
@@ -80,11 +111,11 @@ foreach($payment->getLinks() as $link) {
}
// ### Redirect buyer to PayPal website
// Save payment id so that you can 'complete' the payment
// Save the payment id so that you can 'complete' the payment
// once the buyer approves the payment and is redirected
// bacl to your website.
// back to your website.
//
// It is not really a great idea to store the payment id
// It is not a great idea to store the payment id
// in the session. In a real world app, you may want to
// store the payment id in a database.
$_SESSION['paymentId'] = $payment->getId();

View File

@@ -7,6 +7,9 @@
require __DIR__ . '/../bootstrap.php';
use PayPal\Api\Amount;
use PayPal\Api\Details;
use PayPal\Api\Item;
use PayPal\Api\ItemList;
use PayPal\Api\CreditCardToken;
use PayPal\Api\Payer;
use PayPal\Api\Payment;
@@ -34,13 +37,40 @@ $payer = new Payer();
$payer->setPaymentMethod("credit_card")
->setFundingInstruments(array($fi));
// ### Itemized information
// (Optional) Lets you specify item wise
// information
$item1 = new Item();
$item1->setName('Ground Coffee 40 oz')
->setCurrency('USD')
->setQuantity(1)
->setPrice('7.50');
$item2 = new Item();
$item2->setName('Granola bars')
->setCurrency('USD')
->setQuantity(5)
->setPrice('2.00');
$itemList = new ItemList();
$itemList->setItems(array($item1, $item2));
// ### Additional payment details
// Use this optional field to set additional
// payment information such as tax, shipping
// charges etc.
$details = new Details();
$details->setShipping('1.20')
->setTax('1.30')
->setSubtotal('17.50');
// ### Amount
// Lets you specify a payment amount.
// You can also specify additional details
// such as shipping, tax.
$amount = new Amount();
$amount->setCurrency("USD")
->setTotal("1.00");
->setTotal("20.00")
->setDetails($details);
// ### Transaction
// A transaction defines the contract of a
@@ -48,6 +78,7 @@ $amount->setCurrency("USD")
// is fulfilling it.
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($itemList)
->setDescription("Payment description");
// ### Payment

View File

@@ -1,85 +1,103 @@
<!DOCTYPE html><html lang="en"><head><title>CreatePayment</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="CreatePayment"><meta name="groc-project-path" content="CreatePayment.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">CreatePayment.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h1 id="createpaymentsample">CreatePaymentSample</h1></div></div></div><div class="segment"><div class="code"><div class="wrapper"><span class="c1">//</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><p>This sample code demonstrate how you can process
<!DOCTYPE html><html lang="en"><head><title>CreatePayment</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="CreatePayment"><meta name="groc-project-path" content="CreatePayment.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">CreatePayment.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="createpaymentsample">CreatePaymentSample</h1>
<p>This sample code demonstrate how you can process
a direct credit card payment. Please note that direct
credit card payment and related features using the
REST API is restricted in some countries.
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Address</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\CreditCard</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\FundingInstrument</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="address">Address</h3>
<p>[Optional] Billing address associated with card.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$addr</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Address</span><span class="p">();</span>
<span class="nv">$addr</span><span class="o">-&gt;</span><span class="na">setLine1</span><span class="p">(</span><span class="s2">&quot;3909 Witmer Road&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setLine2</span><span class="p">(</span><span class="s2">&quot;Niagara Falls&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCity</span><span class="p">(</span><span class="s2">&quot;Niagara Falls&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setState</span><span class="p">(</span><span class="s2">&quot;NY&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPostalCode</span><span class="p">(</span><span class="s2">&quot;14305&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCountryCode</span><span class="p">(</span><span class="s2">&quot;US&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPhone</span><span class="p">(</span><span class="s2">&quot;716-298-1822&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="creditcard">CreditCard</h3>
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Details</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Item</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\ItemList</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\CreditCard</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\FundingInstrument</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="creditcard">CreditCard</h3>
<p>A resource representing a credit card that can be
used to fund a payment.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$card</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CreditCard</span><span class="p">();</span>
<span class="nv">$card</span><span class="o">-&gt;</span><span class="na">setType</span><span class="p">(</span><span class="s2">&quot;visa&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setNumber</span><span class="p">(</span><span class="s2">&quot;4417119669820331&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setExpireMonth</span><span class="p">(</span><span class="s2">&quot;11&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setExpireYear</span><span class="p">(</span><span class="s2">&quot;2019&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCvv2</span><span class="p">(</span><span class="s2">&quot;012&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFirstName</span><span class="p">(</span><span class="s2">&quot;Joe&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setLastName</span><span class="p">(</span><span class="s2">&quot;Shopper&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setBillingAddress</span><span class="p">(</span><span class="nv">$addr</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="fundinginstrument">FundingInstrument</h3>
used to fund a payment.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$card</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CreditCard</span><span class="p">();</span>
<span class="nv">$card</span><span class="o">-&gt;</span><span class="na">setType</span><span class="p">(</span><span class="s2">&quot;visa&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setNumber</span><span class="p">(</span><span class="s2">&quot;4417119669820331&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setExpireMonth</span><span class="p">(</span><span class="s2">&quot;11&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setExpireYear</span><span class="p">(</span><span class="s2">&quot;2019&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCvv2</span><span class="p">(</span><span class="s2">&quot;012&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFirstName</span><span class="p">(</span><span class="s2">&quot;Joe&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setLastName</span><span class="p">(</span><span class="s2">&quot;Shopper&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="fundinginstrument">FundingInstrument</h3>
<p>A resource representing a Payer's funding instrument.
For direct credit card payments, set the CreditCard
field on this object.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$fi</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">FundingInstrument</span><span class="p">();</span>
<span class="nv">$fi</span><span class="o">-&gt;</span><span class="na">setCreditCard</span><span class="p">(</span><span class="nv">$card</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payer">Payer</h3>
field on this object.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$fi</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">FundingInstrument</span><span class="p">();</span>
<span class="nv">$fi</span><span class="o">-&gt;</span><span class="na">setCreditCard</span><span class="p">(</span><span class="nv">$card</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payer">Payer</h3>
<p>A resource representing a Payer that funds a payment
For direct credit card payments, set payment method
to 'credit_card' and add an array of funding instruments.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;credit_card&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFundingInstruments</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$fi</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="amount">Amount</h3>
to 'credit_card' and add an array of funding instruments.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;credit_card&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFundingInstruments</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$fi</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="itemized-information">Itemized information</h3>
<p>(Optional) Lets you specify item wise
information</p></div></div><div class="code"><div class="wrapper"><span class="nv">$item1</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item1</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Ground Coffee 40 oz&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;7.50&#39;</span><span class="p">);</span>
<span class="nv">$item2</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item2</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Granola bars&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;2.00&#39;</span><span class="p">);</span>
<span class="nv">$itemList</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">ItemList</span><span class="p">();</span>
<span class="nv">$itemList</span><span class="o">-&gt;</span><span class="na">setItems</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$item1</span><span class="p">,</span> <span class="nv">$item2</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="additional-payment-details">Additional payment details</h3>
<p>Use this optional field to set additional
payment information such as tax, shipping
charges etc.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$details</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Details</span><span class="p">();</span>
<span class="nv">$details</span><span class="o">-&gt;</span><span class="na">setShipping</span><span class="p">(</span><span class="s1">&#39;1.20&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTax</span><span class="p">(</span><span class="s1">&#39;1.30&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setSubtotal</span><span class="p">(</span><span class="s1">&#39;17.50&#39;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="amount">Amount</h3>
<p>Lets you specify a payment amount.
You can also specify additional details
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;1.00&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="transaction">Transaction</h3>
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;20.00&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDetails</span><span class="p">(</span><span class="nv">$details</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="transaction">Transaction</h3>
<p>A transaction defines the contract of a
payment - what is the payment for and who
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payment">Payment</h3>
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setItemList</span><span class="p">(</span><span class="nv">$itemList</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payment">Payment</h3>
<p>A Payment Resource; create one using
the above types and intent set to sale 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
the above types and intent set to sale 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
<p>Create a payment by calling the payment->create() method
with a valid ApiContext (See bootstrap.php for more on <code>ApiContext</code>)
The return object contains the state.</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span>
<span class="cp">?&gt;</span><span class="x"></span>
<span class="x">&lt;html&gt;</span>
<span class="x">&lt;head&gt;</span>
<span class="x"> &lt;title&gt;Direct Credit card payments&lt;/title&gt;</span>
<span class="x">&lt;/head&gt;</span>
<span class="x">&lt;body&gt;</span>
<span class="x"> &lt;div&gt;</span>
<span class="x"> Created payment:</span>
<span class="x"> </span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span><span class="cp">?&gt;</span><span class="x"></span>
<span class="x"> &lt;/div&gt;</span>
<span class="x"> &lt;pre&gt;</span><span class="cp">&lt;?php</span> <span class="nb">var_dump</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">toArray</span><span class="p">());</span><span class="cp">?&gt;</span><span class="x">&lt;/pre&gt;</span>
<span class="x"> &lt;a href=&#39;../index.html&#39;&gt;Back&lt;/a&gt;</span>
<span class="x">&lt;/body&gt;</span>
<span class="x">&lt;/html&gt;</span></div></div></div></div></body></html>
The return object contains the state.</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span>
<span class="cp">?&gt;</span><span class="x"></span>
<span class="x">&lt;html&gt;</span>
<span class="x">&lt;head&gt;</span>
<span class="x"> &lt;title&gt;Direct Credit card payments&lt;/title&gt;</span>
<span class="x">&lt;/head&gt;</span>
<span class="x">&lt;body&gt;</span>
<span class="x"> &lt;div&gt;</span>
<span class="x"> Created payment:</span>
<span class="x"> </span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span><span class="cp">?&gt;</span><span class="x"></span>
<span class="x"> &lt;/div&gt;</span>
<span class="x"> &lt;pre&gt;</span><span class="cp">&lt;?php</span> <span class="nb">var_dump</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">toArray</span><span class="p">());</span><span class="cp">?&gt;</span><span class="x">&lt;/pre&gt;</span>
<span class="x"> &lt;a href=&#39;../index.html&#39;&gt;Back&lt;/a&gt;</span>
<span class="x">&lt;/body&gt;</span>
<span class="x">&lt;/html&gt;</span></div></div></div></div></body></html>

View File

@@ -1,73 +1,101 @@
<!DOCTYPE html><html lang="en"><head><title>CreatePaymentUsingPayPal</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="CreatePaymentUsingPayPal"><meta name="groc-project-path" content="CreatePaymentUsingPayPal.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">CreatePaymentUsingPayPal.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h1 id="create-payment-using-paypal-as-payment-method">Create Payment using PayPal as payment method</h1>
<!DOCTYPE html><html lang="en"><head><title>CreatePaymentUsingPayPal</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="CreatePaymentUsingPayPal"><meta name="groc-project-path" content="CreatePaymentUsingPayPal.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">CreatePaymentUsingPayPal.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="create-payment-using-paypal-as-payment-method">Create Payment using PayPal as payment method</h1>
<p>This sample code demonstrates how you can process a
PayPal Account based Payment.
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\RedirectUrls</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span>
<span class="nb">session_start</span><span class="p">();</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payer">Payer</h3>
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Details</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Item</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\ItemList</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\RedirectUrls</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span>
<span class="nb">session_start</span><span class="p">();</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payer">Payer</h3>
<p>A resource representing a Payer that funds a payment
For paypal account payments, set payment method
to 'paypal'.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;paypal&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="amount">Amount</h3>
to 'paypal'.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;paypal&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="itemized-information">Itemized information</h3>
<p>(Optional) Lets you specify item wise
information</p></div></div><div class="code"><div class="wrapper"><span class="nv">$item1</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item1</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Ground Coffee 40 oz&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;7.50&#39;</span><span class="p">);</span>
<span class="nv">$item2</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item2</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Granola bars&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;2.00&#39;</span><span class="p">);</span>
<span class="nv">$itemList</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">ItemList</span><span class="p">();</span>
<span class="nv">$itemList</span><span class="o">-&gt;</span><span class="na">setItems</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$item1</span><span class="p">,</span> <span class="nv">$item2</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="additional-payment-details">Additional payment details</h3>
<p>Use this optional field to set additional
payment information such as tax, shipping
charges etc.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$details</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Details</span><span class="p">();</span>
<span class="nv">$details</span><span class="o">-&gt;</span><span class="na">setShipping</span><span class="p">(</span><span class="s1">&#39;1.20&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTax</span><span class="p">(</span><span class="s1">&#39;1.30&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setSubtotal</span><span class="p">(</span><span class="s1">&#39;17.50&#39;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="amount">Amount</h3>
<p>Lets you specify a payment amount.
You can also specify additional details
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;1.00&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="transaction">Transaction</h3>
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;20.00&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDetails</span><span class="p">(</span><span class="nv">$details</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="transaction">Transaction</h3>
<p>A transaction defines the contract of a
payment - what is the payment for and who
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="redirect-urls">Redirect urls</h3>
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setItemList</span><span class="p">(</span><span class="nv">$itemList</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="redirect-urls">Redirect urls</h3>
<p>Set the urls that the buyer must be redirected to after
payment approval/ cancellation.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$baseUrl</span> <span class="o">=</span> <span class="nx">getBaseUrl</span><span class="p">();</span>
<span class="nv">$redirectUrls</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">RedirectUrls</span><span class="p">();</span>
<span class="nv">$redirectUrls</span><span class="o">-&gt;</span><span class="na">setReturnUrl</span><span class="p">(</span><span class="s2">&quot;</span><span class="si">$baseUrl</span><span class="s2">/ExecutePayment.php?success=true&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCancelUrl</span><span class="p">(</span><span class="s2">&quot;</span><span class="si">$baseUrl</span><span class="s2">/ExecutePayment.php?success=false&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payment">Payment</h3>
payment approval/ cancellation.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$baseUrl</span> <span class="o">=</span> <span class="nx">getBaseUrl</span><span class="p">();</span>
<span class="nv">$redirectUrls</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">RedirectUrls</span><span class="p">();</span>
<span class="nv">$redirectUrls</span><span class="o">-&gt;</span><span class="na">setReturnUrl</span><span class="p">(</span><span class="s2">&quot;</span><span class="si">$baseUrl</span><span class="s2">/ExecutePayment.php?success=true&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCancelUrl</span><span class="p">(</span><span class="s2">&quot;</span><span class="si">$baseUrl</span><span class="s2">/ExecutePayment.php?success=false&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payment">Payment</h3>
<p>A Payment Resource; create one using
the above types and intent set to 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setRedirectUrls</span><span class="p">(</span><span class="nv">$redirectUrls</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
the above types and intent set to 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setRedirectUrls</span><span class="p">(</span><span class="nv">$redirectUrls</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
<p>Create a payment by calling the 'create' method
passing it a valid apiContext.
(See bootstrap.php for more on <code>ApiContext</code>)
The return object contains the state and the
url to which the buyer must be redirected to
for payment approval</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="get-redirect-url">Get redirect url</h3>
for payment approval</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="get-redirect-url">Get redirect url</h3>
<p>The API response provides the url that you must redirect
the buyer to. Retrieve the url from the $payment->getLinks()
method</p></div></div><div class="code"><div class="wrapper"><span class="k">foreach</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getLinks</span><span class="p">()</span> <span class="k">as</span> <span class="nv">$link</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="nv">$link</span><span class="o">-&gt;</span><span class="na">getRel</span><span class="p">()</span> <span class="o">==</span> <span class="s1">&#39;approval_url&#39;</span><span class="p">)</span> <span class="p">{</span>
<span class="nv">$redirectUrl</span> <span class="o">=</span> <span class="nv">$link</span><span class="o">-&gt;</span><span class="na">getHref</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="redirect-buyer-to-paypal-website">Redirect buyer to PayPal website</h3>
method</p></div></div><div class="code"><div class="wrapper"><span class="k">foreach</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getLinks</span><span class="p">()</span> <span class="k">as</span> <span class="nv">$link</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="nv">$link</span><span class="o">-&gt;</span><span class="na">getRel</span><span class="p">()</span> <span class="o">==</span> <span class="s1">&#39;approval_url&#39;</span><span class="p">)</span> <span class="p">{</span>
<span class="nv">$redirectUrl</span> <span class="o">=</span> <span class="nv">$link</span><span class="o">-&gt;</span><span class="na">getHref</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="redirect-buyer-to-paypal-website">Redirect buyer to PayPal website</h3>
<p>Save payment id so that you can 'complete' the payment
<p>Save the payment id so that you can 'complete' the payment
once the buyer approves the payment and is redirected
bacl to your website.</p></div></div><div class="code"><div class="wrapper"><span class="c1">//</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><p>It is not really a great idea to store the payment id
back to your website.
It is not a great idea to store the payment id
in the session. In a real world app, you may want to
store the payment id in a database.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$_SESSION</span><span class="p">[</span><span class="s1">&#39;paymentId&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span>
<span class="k">if</span><span class="p">(</span><span class="nb">isset</span><span class="p">(</span><span class="nv">$redirectUrl</span><span class="p">))</span> <span class="p">{</span>
<span class="nx">header</span><span class="p">(</span><span class="s2">&quot;Location: </span><span class="si">$redirectUrl</span><span class="s2">&quot;</span><span class="p">);</span>
<span class="k">exit</span><span class="p">;</span>
store the payment id in a database.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$_SESSION</span><span class="p">[</span><span class="s1">&#39;paymentId&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span>
<span class="k">if</span><span class="p">(</span><span class="nb">isset</span><span class="p">(</span><span class="nv">$redirectUrl</span><span class="p">))</span> <span class="p">{</span>
<span class="nx">header</span><span class="p">(</span><span class="s2">&quot;Location: </span><span class="si">$redirectUrl</span><span class="s2">&quot;</span><span class="p">);</span>
<span class="k">exit</span><span class="p">;</span>
<span class="p">}</span></div></div></div></div></body></html>

View File

@@ -1,69 +1,96 @@
<!DOCTYPE html><html lang="en"><head><title>CreatePaymentUsingSavedCard</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="CreatePaymentUsingSavedCard"><meta name="groc-project-path" content="CreatePaymentUsingSavedCard.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">CreatePaymentUsingSavedCard.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h1 id="create-payment-using-a-saved-credit-card">Create payment using a saved credit card</h1>
<!DOCTYPE html><html lang="en"><head><title>CreatePaymentUsingSavedCard</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="CreatePaymentUsingSavedCard"><meta name="groc-project-path" content="CreatePaymentUsingSavedCard.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">CreatePaymentUsingSavedCard.php</div></div><div id="document"><div class="segment"><div class="code"><div class="wrapper"><span class="cp">&lt;?php</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h1 id="create-payment-using-a-saved-credit-card">Create payment using a saved credit card</h1>
<p>This sample code demonstrates how you can process a
Payment using a previously stored credit card token.
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\CreditCardToken</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\FundingInstrument</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="credit-card-token">Credit card token</h3>
API used: /v1/payments/payment</p></div></div><div class="code"><div class="wrapper"><span class="k">require</span> <span class="nx">__DIR__</span> <span class="o">.</span> <span class="s1">&#39;/../bootstrap.php&#39;</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Amount</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Details</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Item</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\ItemList</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\CreditCardToken</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payer</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Payment</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\FundingInstrument</span><span class="p">;</span>
<span class="k">use</span> <span class="nx">PayPal\Api\Transaction</span><span class="p">;</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="credit-card-token">Credit card token</h3>
<p>Saved credit card id from a previous call to
CreateCreditCard.php</p></div></div><div class="code"><div class="wrapper"><span class="nv">$creditCardToken</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CreditCardToken</span><span class="p">();</span>
<span class="nv">$creditCardToken</span><span class="o">-&gt;</span><span class="na">setCreditCardId</span><span class="p">(</span><span class="s1">&#39;CARD-29H07236G1554552FKINPBHQ&#39;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="fundinginstrument">FundingInstrument</h3>
CreateCreditCard.php</p></div></div><div class="code"><div class="wrapper"><span class="nv">$creditCardToken</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CreditCardToken</span><span class="p">();</span>
<span class="nv">$creditCardToken</span><span class="o">-&gt;</span><span class="na">setCreditCardId</span><span class="p">(</span><span class="s1">&#39;CARD-29H07236G1554552FKINPBHQ&#39;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="fundinginstrument">FundingInstrument</h3>
<p>A resource representing a Payer's funding instrument.
For stored credit card payments, set the CreditCardToken
field on this object.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$fi</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">FundingInstrument</span><span class="p">();</span>
<span class="nv">$fi</span><span class="o">-&gt;</span><span class="na">setCreditCardToken</span><span class="p">(</span><span class="nv">$creditCardToken</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payer">Payer</h3>
field on this object.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$fi</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">FundingInstrument</span><span class="p">();</span>
<span class="nv">$fi</span><span class="o">-&gt;</span><span class="na">setCreditCardToken</span><span class="p">(</span><span class="nv">$creditCardToken</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payer">Payer</h3>
<p>A resource representing a Payer that funds a payment
For stored credit card payments, set payment method
to 'credit_card'.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;credit_card&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFundingInstruments</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$fi</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="amount">Amount</h3>
to 'credit_card'.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payer</span><span class="p">();</span>
<span class="nv">$payer</span><span class="o">-&gt;</span><span class="na">setPaymentMethod</span><span class="p">(</span><span class="s2">&quot;credit_card&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setFundingInstruments</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$fi</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="itemized-information">Itemized information</h3>
<p>(Optional) Lets you specify item wise
information</p></div></div><div class="code"><div class="wrapper"><span class="nv">$item1</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item1</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Ground Coffee 40 oz&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;7.50&#39;</span><span class="p">);</span>
<span class="nv">$item2</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Item</span><span class="p">();</span>
<span class="nv">$item2</span><span class="o">-&gt;</span><span class="na">setName</span><span class="p">(</span><span class="s1">&#39;Granola bars&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s1">&#39;USD&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setQuantity</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPrice</span><span class="p">(</span><span class="s1">&#39;2.00&#39;</span><span class="p">);</span>
<span class="nv">$itemList</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">ItemList</span><span class="p">();</span>
<span class="nv">$itemList</span><span class="o">-&gt;</span><span class="na">setItems</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$item1</span><span class="p">,</span> <span class="nv">$item2</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="additional-payment-details">Additional payment details</h3>
<p>Use this optional field to set additional
payment information such as tax, shipping
charges etc.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$details</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Details</span><span class="p">();</span>
<span class="nv">$details</span><span class="o">-&gt;</span><span class="na">setShipping</span><span class="p">(</span><span class="s1">&#39;1.20&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTax</span><span class="p">(</span><span class="s1">&#39;1.30&#39;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setSubtotal</span><span class="p">(</span><span class="s1">&#39;17.50&#39;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="amount">Amount</h3>
<p>Lets you specify a payment amount.
You can also specify additional details
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;1.00&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="transaction">Transaction</h3>
such as shipping, tax.</p></div></div><div class="code"><div class="wrapper"><span class="nv">$amount</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Amount</span><span class="p">();</span>
<span class="nv">$amount</span><span class="o">-&gt;</span><span class="na">setCurrency</span><span class="p">(</span><span class="s2">&quot;USD&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTotal</span><span class="p">(</span><span class="s2">&quot;20.00&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDetails</span><span class="p">(</span><span class="nv">$details</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="transaction">Transaction</h3>
<p>A transaction defines the contract of a
payment - what is the payment for and who
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="payment">Payment</h3>
is fulfilling it. </p></div></div><div class="code"><div class="wrapper"><span class="nv">$transaction</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Transaction</span><span class="p">();</span>
<span class="nv">$transaction</span><span class="o">-&gt;</span><span class="na">setAmount</span><span class="p">(</span><span class="nv">$amount</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setItemList</span><span class="p">(</span><span class="nv">$itemList</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setDescription</span><span class="p">(</span><span class="s2">&quot;Payment description&quot;</span><span class="p">);</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="payment">Payment</h3>
<p>A Payment Resource; create one using
the above types and intent set to 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments"><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
the above types and intent set to 'sale'</p></div></div><div class="code"><div class="wrapper"><span class="nv">$payment</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Payment</span><span class="p">();</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">setIntent</span><span class="p">(</span><span class="s2">&quot;sale&quot;</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setPayer</span><span class="p">(</span><span class="nv">$payer</span><span class="p">)</span>
<span class="o">-&gt;</span><span class="na">setTransactions</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="nv">$transaction</span><span class="p">));</span></div></div></div><div class="segment"><div class="comments "><div class="wrapper"><h3 id="create-payment">Create Payment</h3>
<p>Create a payment by calling the 'create' method
passing it a valid apiContext.
(See bootstrap.php for more on <code>ApiContext</code>)
The return object contains the state.</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span>
<span class="cp">?&gt;</span><span class="x"></span>
<span class="x">&lt;html&gt;</span>
<span class="x">&lt;head&gt;</span>
<span class="x"> &lt;title&gt;Saved Credit card payments&lt;/title&gt;</span>
<span class="x">&lt;/head&gt;</span>
<span class="x">&lt;body&gt;</span>
<span class="x"> &lt;div&gt;</span>
<span class="x"> Created payment:</span>
<span class="x"> </span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span><span class="cp">?&gt;</span><span class="x"></span>
<span class="x"> &lt;/div&gt;</span>
<span class="x"> &lt;pre&gt;</span><span class="cp">&lt;?php</span> <span class="nb">var_dump</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">toArray</span><span class="p">());</span><span class="cp">?&gt;</span><span class="x">&lt;/pre&gt;</span>
<span class="x"> &lt;a href=&#39;../index.html&#39;&gt;Back&lt;/a&gt;</span>
<span class="x">&lt;/body&gt;</span>
The return object contains the state.</p></div></div><div class="code"><div class="wrapper"><span class="k">try</span> <span class="p">{</span>
<span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">create</span><span class="p">(</span><span class="nv">$apiContext</span><span class="p">);</span>
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">PayPal\Exception\PPConnectionException</span> <span class="nv">$ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">echo</span> <span class="s2">&quot;Exception: &quot;</span> <span class="o">.</span> <span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getMessage</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span>
<span class="nb">var_dump</span><span class="p">(</span><span class="nv">$ex</span><span class="o">-&gt;</span><span class="na">getData</span><span class="p">());</span>
<span class="k">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="p">}</span>
<span class="cp">?&gt;</span><span class="x"></span>
<span class="x">&lt;html&gt;</span>
<span class="x">&lt;head&gt;</span>
<span class="x"> &lt;title&gt;Saved Credit card payments&lt;/title&gt;</span>
<span class="x">&lt;/head&gt;</span>
<span class="x">&lt;body&gt;</span>
<span class="x"> &lt;div&gt;</span>
<span class="x"> Created payment:</span>
<span class="x"> </span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">getId</span><span class="p">();</span><span class="cp">?&gt;</span><span class="x"></span>
<span class="x"> &lt;/div&gt;</span>
<span class="x"> &lt;pre&gt;</span><span class="cp">&lt;?php</span> <span class="nb">var_dump</span><span class="p">(</span><span class="nv">$payment</span><span class="o">-&gt;</span><span class="na">toArray</span><span class="p">());</span><span class="cp">?&gt;</span><span class="x">&lt;/pre&gt;</span>
<span class="x"> &lt;a href=&#39;../index.html&#39;&gt;Back&lt;/a&gt;</span>
<span class="x">&lt;/body&gt;</span>
<span class="x">&lt;/html&gt;</span></div></div></div></div></body></html>

View File

@@ -12,12 +12,14 @@ 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
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "c:\\xcommerce\\repo\\PayPalSDKs\\rest\\rest-api-sdk-php\\sample\\sale\\GetSale.php",
"projectPath": "GetSale.php",
"targetPath": "GetSale",
"title": "GetSale"
"projectPath": "CreatePayment.php",
"targetPath": "CreatePayment",
"pageTitle": "CreatePayment",
"title": "CreatePayment"
},
"depth": 1,
"outline": [
@@ -25,8 +27,8 @@ 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": 1,
"title": "Get Sale sample",
"slug": "get-sale-sample"
"title": "CreatePaymentSample",
"slug": "createpaymentsample"
},
"depth": 1,
"children": [
@@ -34,8 +36,72 @@ 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 the sale object",
"slug": "retrieve-the-sale-object"
"title": "CreditCard",
"slug": "creditcard"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "FundingInstrument",
"slug": "fundinginstrument"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Payer",
"slug": "payer"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Itemized information",
"slug": "itemized-information"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Additional payment details",
"slug": "additional-payment-details"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Amount",
"slug": "amount"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Transaction",
"slug": "transaction"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Payment",
"slug": "payment"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Create Payment",
"slug": "create-payment"
},
"depth": 3
}
@@ -49,12 +115,14 @@ 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
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"sourcePath": "c:\\xcommerce\\repo\\PayPalSDKs\\rest\\rest-api-sdk-php\\sample\\sale\\RefundSale.php",
"projectPath": "RefundSale.php",
"targetPath": "RefundSale",
"title": "RefundSale"
"projectPath": "CreatePaymentUsingPayPal.php",
"targetPath": "CreatePaymentUsingPayPal",
"pageTitle": "CreatePaymentUsingPayPal",
"title": "CreatePaymentUsingPayPal"
},
"depth": 1,
"outline": [
@@ -62,8 +130,8 @@ 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": 1,
"title": "Sale Refund Sample",
"slug": "sale-refund-sample"
"title": "Create Payment using PayPal as payment method",
"slug": "create-payment-using-paypal-as-payment-method"
},
"depth": 1,
"children": [
@@ -71,24 +139,183 @@ 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": "Refund amount",
"slug": "refund-amount"
"title": "Payer",
"slug": "payer"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Refund object",
"slug": "refund-object"
"title": "Itemized information",
"slug": "itemized-information"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Sale",
"slug": "sale"
"title": "Additional payment details",
"slug": "additional-payment-details"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Amount",
"slug": "amount"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Transaction",
"slug": "transaction"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Redirect urls",
"slug": "redirect-urls"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Payment",
"slug": "payment"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Create Payment",
"slug": "create-payment"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Get redirect url",
"slug": "get-redirect-url"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Redirect buyer to PayPal website",
"slug": "redirect-buyer-to-paypal-website"
},
"depth": 3
}
]
}
]
}, {
"type": "file",
"data": {
"language": {
"nameMatchers": [{}, ".fbp"],
"pygmentsLexer": "php",
"singleLineComment": ["//"],
"ignorePrefix": "}",
"foldPrefix": "^",
"name": "PHP"
},
"projectPath": "CreatePaymentUsingSavedCard.php",
"targetPath": "CreatePaymentUsingSavedCard",
"pageTitle": "CreatePaymentUsingSavedCard",
"title": "CreatePaymentUsingSavedCard"
},
"depth": 1,
"outline": [
{
"type": "heading",
"data": {
"level": 1,
"title": "Create payment using a saved credit card",
"slug": "create-payment-using-a-saved-credit-card"
},
"depth": 1,
"children": [
{
"type": "heading",
"data": {
"level": 3,
"title": "Credit card token",
"slug": "credit-card-token"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "FundingInstrument",
"slug": "fundinginstrument"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Payer",
"slug": "payer"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Itemized information",
"slug": "itemized-information"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Additional payment details",
"slug": "additional-payment-details"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Amount",
"slug": "amount"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Transaction",
"slug": "transaction"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Payment",
"slug": "payment"
},
"depth": 3
}, {
"type": "heading",
"data": {
"level": 3,
"title": "Create Payment",
"slug": "create-payment"
},
"depth": 3
}
@@ -331,14 +558,29 @@ 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
};
buildTOCNode = function(node, metaInfo) {
var c, children$, discloser$, label$, node$, _i, _len, _ref, _ref1, _ref2;
var c, children$, clickLabel, discloser, discloser$, label$, node$, _i, _len, _ref, _ref1, _ref2;
node$ = $("<li class=\"" + node.type + "\"/>");
discloser = null;
switch (node.type) {
case 'file':
node$.append("<a class=\"label\" href=\"" + metaInfo.relativeRoot + node.data.targetPath + ".html\" title=\"" + node.data.projectPath + "\"><span class=\"text\">" + node.data.title + "</span></a>");
clickLabel = function(evt) {
if (evt.target === discloser) {
node$.toggleClass('expanded');
evt.preventDefault();
return false;
}
return selectNode(node$);
};
break;
case 'folder':
node$.append("<span class=\"label\"><span class=\"text\">" + node.data.title + "</span></span>");
node$.append("<a class=\"label\" href=\"#\"><span class=\"text\">" + node.data.title + "</span></a>");
clickLabel = function(evt) {
selectNode(node$);
node$.toggleClass('expanded');
evt.preventDefault();
return false;
};
}
if (((_ref = node.children) != null ? _ref.length : void 0) > 0) {
children$ = $('<ol class="children"/>');
@@ -350,17 +592,12 @@ 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
node$.append(children$);
}
label$ = node$.find('> .label');
label$.click(function() {
return selectNode(node$);
});
label$.click(clickLabel);
discloser$ = $('<span class="discloser"/>').prependTo(label$);
if (!(((_ref2 = node.children) != null ? _ref2.length : void 0) > 0)) {
discloser$.addClass('placeholder');
}
discloser$.click(function(evt) {
node$.toggleClass('expanded');
return evt.preventDefault();
});
discloser = discloser$.get(0);
if (node.type === 'file') {
fileMap[node.data.targetPath] = node$;
}
@@ -435,7 +672,7 @@ 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
search$.bind('keyup search', function(evt) {
return searchNodes(search$.val());
});
return search$.keydown(function(evt) {
search$.keydown(function(evt) {
if (evt.keyCode === 27) {
if (search$.val().trim() === '') {
return search$.blur();
@@ -444,6 +681,15 @@ 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
}
}
});
return $('.code.folded').each(function(index, code) {
var code$;
code$ = $(code);
return code$.click(function(evt) {
code$.toggleClass('folded');
evt.preventDefault();
return false;
});
});
});
}).call(this);

File diff suppressed because one or more lines are too long