Files
2026-05-13 09:43:32 -04:00

74 lines
2.3 KiB
PHP

<?php
require_once('../PPBootStrap.php');
session_start();
$logger = new PPLoggingManager('SetExpressCheckout');
$serverName = $_SERVER['SERVER_NAME'];
$serverPort = $_SERVER['SERVER_PORT'];
$url=dirname('http://'.$serverName.':'.$serverPort.$_SERVER['REQUEST_URI']);
$returnUrl = $url."/DGdoExpressCheckout.php";
$cancelUrl = $url. "/DGsetEC.html.php" ;
$orderTotal = new BasicAmountType();
$orderTotal->currencyID = $_REQUEST['currencyId'];
$orderTotal->value = $_REQUEST['amount'];
$taxTotal = new BasicAmountType();
$taxTotal->currencyID = 'USD';
$taxTotal->value = '0.0';
$itemDetails = new PaymentDetailsItemType();
$itemDetails->Name = 'sample item';
$itemDetails->Amount = $orderTotal;
$itemDetails->Quantity = '1';
$itemDetails->ItemCategory = 'Digital';
$PaymentDetails= new PaymentDetailsType();
$PaymentDetails->PaymentDetailsItem[0] = $itemDetails;
//$PaymentDetails->ShipToAddress = $address;
$PaymentDetails->OrderTotal = $orderTotal;
$PaymentDetails->PaymentAction = 'Sale';
$PaymentDetails->ItemTotal = $orderTotal;
$PaymentDetails->TaxTotal = $taxTotal;
$setECReqDetails = new SetExpressCheckoutRequestDetailsType();
$setECReqDetails->PaymentDetails[0] = $PaymentDetails;
$setECReqDetails->CancelURL = $cancelUrl;
$setECReqDetails->ReturnURL = $returnUrl;
$setECReqDetails->ReqConfirmShipping = 0;
$setECReqDetails->NoShipping = 1;
$setECReqType = new SetExpressCheckoutRequestType();
$setECReqType->SetExpressCheckoutRequestDetails = $setECReqDetails;
$setECReq = new SetExpressCheckoutReq();
$setECReq->SetExpressCheckoutRequest = $setECReqType;
// storing in session to use in DoExpressCheckout
$_SESSION['amount'] = $_REQUEST['amount'];
$_SESSION['currencyID'] = $_REQUEST['currencyId'];
$PayPal_service = new PayPalAPIInterfaceServiceService();
$setECResponse = $PayPal_service->SetExpressCheckout($setECReq);
// echo '<pre>';
//print_r($setECResponse);
// echo '</pre>';
if($setECResponse->Ack == 'Success')
{
$token = $setECResponse->Token;
/*
$payPalURL = 'https://www.sandbox.paypal.com/incontext?token=' . $token;
header("Location: ".$payPalURL);*/
echo "<br><br><br><br><br><br><br><br><a href=https://www.sandbox.paypal.com/incontext?token=$token />Click here to continue to https://www.sandbox.paypal.com/incontext?token=$token</a>";
}
else {
var_dump($setECResponse);
echo "error in SetEC API call";
}
?>