if ($_POST['refundDate'] != "") {
     $refundDetails->date = $_POST['refundDate'];
 }
 $markInvoiceAsRefundedRequest = new MarkInvoiceAsRefundedRequest($requestEnvelope, $_POST['invoiceID'], $refundDetails);
 /*
      configuration file for your credentials and endpoint
 */
 $invoiceService = new InvoiceService(Configuration::getAcctAndConfig());
 // required in third party permissioning
 if ($_POST['accessToken'] != null && $_POST['tokenSecret'] != null) {
     $cred = new PPSignatureCredential(USERNAME, PASSWORD, SIGNATURE);
     $cred->setThirdPartyAuthorization(new PPTokenAuthorization($_POST['accessToken'], $_POST['tokenSecret']));
 }
 try {
     if ($_POST['accessToken'] != null && $_POST['tokenSecret'] != null) {
         $markInvoiceAsRefundedResponse = $invoiceService->MarkInvoiceAsRefunded($markInvoiceAsRefundedRequest, $cred);
     } else {
         $markInvoiceAsRefundedResponse = $invoiceService->MarkInvoiceAsRefunded($markInvoiceAsRefundedRequest);
     }
 } catch (Exception $ex) {
     require_once 'error.php';
     exit;
 }
 echo "<table>";
 echo "<tr><td>Ack :</td><td><div id='Ack'>" . $markInvoiceAsRefundedResponse->responseEnvelope->ack . "</div> </td></tr>";
 echo "<tr><td>InvoiceID :</td><td><div id='InvoiceID'>" . $markInvoiceAsRefundedResponse->invoiceID . "</div> </td></tr>";
 echo "</table>";
 require 'ShowAllResponse.php';
 echo "<pre>";
 var_dump($markInvoiceAsRefundedResponse);
 echo "</pre>";
    $refundDetails = new OtherPaymentRefundDetailsType();
    if ($_POST['note'] != "") {
        $refundDetails->note = $_POST['note'];
    }
    if ($_POST['refundDate'] != "") {
        $refundDetails->date = $_POST['refundDate'];
    }
    $markInvoiceAsRefundedRequest = new MarkInvoiceAsRefundedRequest($requestEnvelope, $_POST['invoiceID'], $refundDetails);
    $logger->info("created MarkInvoiceAsRefunded Object");
    $invoiceService = new InvoiceService();
    // required in third party permissioning
    if ($_POST['accessToken'] != null && $_POST['tokenSecret'] != null) {
        $invoiceService->setAccessToken($_POST['accessToken']);
        $invoiceService->setTokenSecret($_POST['tokenSecret']);
    }
    $markInvoiceAsRefundedResponse = $invoiceService->MarkInvoiceAsRefunded($markInvoiceAsRefundedRequest, 'jb-us-seller_api1.paypal.com');
    $logger->info("Received MarkInvoiceAsRefundedResponse:");
    var_dump($markInvoiceAsRefundedResponse);
} else {
    ?>

<form method="POST">
<div id="apidetails">The MarkInvoiceAsRefunded API operation is used to mark an invoice as refunded.</div>
<div class="params">
	<div class="param_name">Invoice ID *</div>
	<div class="param_value"><input type="text" name="invoiceID" value=""
		size="50" maxlength="260" /></div>
</div>
<div class="section_header">Other Refund Details *</div>
<div class="params">
	<div class="param_name">Note</div>