From 2b965b059673c961b324ec15ba9f9f2b83d78894 Mon Sep 17 00:00:00 2001 From: Ganesh Hegde <1ganesh1@facebook.com> Date: Wed, 29 May 2013 17:23:47 +0530 Subject: [PATCH] updating sample to show full API flow --- sample/payments/AuthorizationCapture.php | 74 ++++++++++++++++--- sample/payments/GetAuthorization.php | 59 +++++++++++++++- sample/payments/GetCapture.php | 82 ++++++++++++++++++++- sample/payments/RefundCapture.php | 90 ++++++++++++++++++++++-- sample/payments/VoidAuthorization.php | 59 +++++++++++++++- sample/vault/DeleteCreditCard.php | 31 +++++++- 6 files changed, 374 insertions(+), 21 deletions(-) diff --git a/sample/payments/AuthorizationCapture.php b/sample/payments/AuthorizationCapture.php index 328b518..d87474a 100644 --- a/sample/payments/AuthorizationCapture.php +++ b/sample/payments/AuthorizationCapture.php @@ -6,23 +6,28 @@ require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Capture; use PayPal\Api\Authorization; +use PayPal\Api\Address; use PayPal\Api\Amount; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; -### Amount -//Let's you specify a payment amount. - $amount = new Amount(); - $amount->setCurrency("USD"); - $amount->setTotal("1.00"); +// create payment to get authorization Id +$authId = createAuthorization(); +$amt = new Amount(); +$amt->setCurrency("USD"); +$amt->setTotal("1.00"); ### Capture - $captur = new Capture(); -$captur->setId('5RA45624N3531924N'); -$captur->setAmount($amount); +$captur->setId($authId); +$captur->setAmount($amt); // get the authorization -$authorization = Authorization::get('8UA90289RG279654G', $apiContext); +$authorization = Authorization::get($authId, $apiContext); // ### Capture Payment // Capture Payment by posting to the APIService @@ -42,7 +47,56 @@ try { Capture payment: getId();?> -
toArray());?>
+
+		toArray());?>
+	
Back +setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; +} \ No newline at end of file diff --git a/sample/payments/GetAuthorization.php b/sample/payments/GetAuthorization.php index 1bf13a0..c72e0e4 100644 --- a/sample/payments/GetAuthorization.php +++ b/sample/payments/GetAuthorization.php @@ -6,13 +6,23 @@ require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Authorization; +use PayPal\Api\Address; +use PayPal\Api\Amount; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; + +// create payment to get authorization Id +$authId = createAuthorization(); // ### GetAuthorization // GetAuthorization by posting to the APIService // using a valid ApiContext (See bootstrap.php for more on `ApiContext`) // The return object contains the status; try { - $authorization = Authorization::get('1FR49283DF589111P', $apiContext); + $authorization = Authorization::get($authId, $apiContext); } catch (\PPConnectionException $ex) { echo "Exception: " . $ex->getMessage() . PHP_EOL; var_dump($ex->getData()); @@ -29,3 +39,50 @@ try { Back +setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; +} \ No newline at end of file diff --git a/sample/payments/GetCapture.php b/sample/payments/GetCapture.php index 73a7062..9b08564 100644 --- a/sample/payments/GetCapture.php +++ b/sample/payments/GetCapture.php @@ -5,13 +5,46 @@ require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Capture; +use PayPal\Api\Address; +use PayPal\Api\Amount; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; + +// create payment to get authorization Id +$authId = createAuthorization(); +$amt = new Amount(); +$amt->setCurrency("USD"); +$amt->setTotal("1.00"); + +### Capture +$captur = new Capture(); +$captur->setId($authId); +$captur->setAmount($amt); + +// get the authorization +$authorization = Authorization::get($authId, $apiContext); + +// ### Capture Payment +// Capture Payment by posting to the APIService +// using a valid ApiContext (See bootstrap.php for more on `ApiContext`) +// The return object contains the status; +try { + $capt = $authorization->capture($captur, $apiContext); +} catch (\PPConnectionException $ex) { + echo "Exception: " . $ex->getMessage() . PHP_EOL; + var_dump($ex->getData()); + exit(1); +} // ### Get Capture // Get Capture by posting to the APIService // using a valid ApiContext (See bootstrap.php for more on `ApiContext`) // The return object contains the status; try { - $capture = Capture::get('7BA08426L46375838', $apiContext); + $capture = Capture::get($capt->getId(), $apiContext); } catch (\PPConnectionException $ex) { echo "Exception: " . $ex->getMessage() . PHP_EOL; var_dump($ex->getData()); @@ -28,3 +61,50 @@ try { Back +setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; +} \ No newline at end of file diff --git a/sample/payments/RefundCapture.php b/sample/payments/RefundCapture.php index 447cd4c..983e6b6 100644 --- a/sample/payments/RefundCapture.php +++ b/sample/payments/RefundCapture.php @@ -2,7 +2,40 @@ require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Capture; use PayPal\Api\Refund; +use PayPal\Api\Address; use PayPal\Api\Amount; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; + +// create payment to get authorization Id +$authId = createAuthorization(); + +$amt = new Amount(); +$amt->setCurrency("USD"); +$amt->setTotal("1.00"); + +### Capture +$captur = new Capture(); +$captur->setId($authId); +$captur->setAmount($amt); + +// get the authorization +$authorization = Authorization::get($authId, $apiContext); + +// ### Capture Payment +// Capture Payment by posting to the APIService +// using a valid ApiContext (See bootstrap.php for more on `ApiContext`) +// The return object contains the status; +try { + $capt = $authorization->capture($captur, $apiContext); +} catch (\PPConnectionException $ex) { + echo "Exception: " . $ex->getMessage() . PHP_EOL; + var_dump($ex->getData()); + exit(1); +} // # Refund Capture Sample // This sample code demonstrate how you can @@ -14,17 +47,14 @@ use PayPal\Api\Amount; // ### Refund // Create a refund object indicating // refund amount - $amount = new Amount(); - $amount->setCurrency("USD"); - $amount->setTotal("1.00"); $refund = new Refund(); -$refund->setId('7BA08426L46375838'); -$refund->setAmount($amount); +$refund->setId($capt->getId()); +$refund->setAmount($amt); -$capture = Capture::get('7BA08426L46375838', $apiContext); +$capture = Capture::get($capt->getId(), $apiContext); try { // (See bootstrap.php for more on `ApiContext`) $captureRefund = $capture->refund($refund, $apiContext); @@ -42,4 +72,50 @@ try { Back - +setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; +} \ No newline at end of file diff --git a/sample/payments/VoidAuthorization.php b/sample/payments/VoidAuthorization.php index dfeb051..147ff07 100644 --- a/sample/payments/VoidAuthorization.php +++ b/sample/payments/VoidAuthorization.php @@ -6,8 +6,18 @@ require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Authorization; +use PayPal\Api\Address; +use PayPal\Api\Amount; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; -$authorization = Authorization::get('87U86133WD4359724', $apiContext); +// create payment to get authorization Id +$authId = createAuthorization(); + +$authorization = Authorization::get($authId, $apiContext); // ### VoidAuthorization @@ -31,3 +41,50 @@ try { Back +setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; +} \ No newline at end of file diff --git a/sample/vault/DeleteCreditCard.php b/sample/vault/DeleteCreditCard.php index a815163..0eed82c 100644 --- a/sample/vault/DeleteCreditCard.php +++ b/sample/vault/DeleteCreditCard.php @@ -1,6 +1,35 @@ setType("visa"); +$card->setNumber("4417119669820331"); +$card->setExpire_month("11"); +$card->setExpire_year("2019"); +$card->setCvv2("012"); +$card->setFirst_name("Joe"); +$card->setLast_name("Shopper"); + +// ### Save card +// Creates the credit card as a resource +// in the PayPal vault. The response contains +// an 'id' that you can use to refer to it +// in the future payments. +// (See bootstrap.php for more on `ApiContext`) +try { + $res = $card->create($apiContext); +} catch (\PPConnectionException $ex) { + echo "Exception:" . $ex->getMessage() . PHP_EOL; + var_dump($ex->getData()); + exit(1); +} // # Delete CreditCard Sample // This sample code demonstrate how you can @@ -9,7 +38,7 @@ use PayPal\Api\CreditCard; // API used: /v1/vault/credit-card/{} // NOTE: HTTP method used here is DELETE -$creditCard = CreditCard::get('CARD-38K23067VS968933SKGPU66Q', $apiContext); +$creditCard = CreditCard::get($res->getId(), $apiContext); try { // (See bootstrap.php for more on `ApiContext`)