/** * @depends testSerializationDeserialization * @param RefundRequest $obj */ public function testGetters($obj) { $this->assertEquals($obj->getAmount(), AmountTest::getObject()); $this->assertEquals($obj->getDescription(), "TestSample"); $this->assertEquals($obj->getRefundSource(), "TestSample"); $this->assertEquals($obj->getReason(), "TestSample"); $this->assertEquals($obj->getInvoiceNumber(), "TestSample"); $this->assertEquals($obj->getRefundAdvice(), true); }
<?php // # Refund Capture Sample // This sample code demonstrates how you can // process a refund on a Captured transaction. // API used: /v1/payments/capture/{<captureID>}/refund /** @var Capture $capture */ $capture = (require 'AuthorizationCapture.php'); use PayPal\Api\Capture; use PayPal\Api\Refund; use PayPal\Api\RefundRequest; // ### Refund // Create a refund object indicating // refund amount and call the refund method $refundRequest = new RefundRequest(); $refundRequest->setAmount($amt); try { // Create a new apiContext object so we send a new // PayPal-Request-Id (idempotency) header for this resource $apiContext = getApiContext($clientId, $clientSecret); $captureRefund = $capture->refundCapturedPayment($refundRequest, $apiContext); } catch (Exception $ex) { // NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY ResultPrinter::printError("Refund Capture", "Capture", null, $refundRequest, $ex); exit(1); } // NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY ResultPrinter::printResult("Refund Capture", "Capture", $captureRefund->getId(), $refundRequest, $captureRefund);
// API used: /v1/payments/sale/{sale-id}/refund /** @var Sale $sale */ $sale = (require 'GetSale.php'); $saleId = $sale->getId(); use PayPal\Api\Amount; use PayPal\Api\Refund; use PayPal\Api\RefundRequest; use PayPal\Api\Sale; // ### Refund amount // Includes both the refunded amount (to Payer) // and refunded fee (to Payee). Use the $amt->details // field to mention fees refund details. $amt = new Amount(); $amt->setCurrency('USD')->setTotal(0.01); // ### Refund object $refundRequest = new RefundRequest(); $refundRequest->setAmount($amt); // ###Sale // A sale transaction. // Create a Sale object with the // given sale transaction id. $sale = new Sale(); $sale->setId($saleId); try { // Create a new apiContext object so we send a new // PayPal-Request-Id (idempotency) header for this resource $apiContext = getApiContext($clientId, $clientSecret); // Refund the sale // (See bootstrap.php for more on `ApiContext`) $refundedSale = $sale->refundSale($refundRequest, $apiContext); } catch (Exception $ex) {