This repository has been archived by the owner on Oct 6, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
expresscheckout.php
71 lines (62 loc) · 2.7 KB
/
expresscheckout.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
require_once 'paypalfunctions.php';
// ==================================
// PayPal Express Checkout Module
// ==================================
//'------------------------------------
//' The paymentAmount is the total value of
//' the shopping cart, that was set
//' earlier in a session variable
//' by the shopping cart page
//'------------------------------------
$paymentAmount = $_POST['Payment_Amount'];
$_SESSION['Payment_Amount'] = $paymentAmount;
$planSelect = $_POST['planSelect'];
$_SESSION['planSelect'] = $planSelect;
$planNumberSelect = $_POST['planNumberSelect'];
$_SESSION['planNumberSelect'] = $planNumberSelect;
$planPrice = $_POST['planPrice'];
$_SESSION['planPrice'] = $planPrice;
//'------------------------------------
//' The currencyCodeType and paymentType
//' are set to the selections made on the Integration Assistant
//'------------------------------------
$currencyCodeType = 'JPY';
$paymentType = 'Sale';
//'------------------------------------
//' The returnURL is the location where buyers return to when a
//' payment has been succesfully authorized.
//'
//' This is set to the value entered on the Integration Assistant
//'------------------------------------
$returnURL = 'add return URL';
//'------------------------------------
//' The cancelURL is the location buyers are sent to when they hit the
//' cancel button during authorization of payment during the PayPal flow
//'
//' This is set to the value entered on the Integration Assistant
//'------------------------------------
$cancelURL = 'add cancel URL';
//'------------------------------------
//' Calls the SetExpressCheckout API call
//'
//' The CallShortcutExpressCheckout function is defined in the file PayPalFunctions.php,
//' it is included at the top of this file.
//'-------------------------------------------------
$resArray = CallShortcutExpressCheckout($paymentAmount, $currencyCodeType, $paymentType, $returnURL, $cancelURL, $planSelect, $planPrice, $planNumberSelect);
$ack = strtoupper($resArray['ACK']);
if ($ack == 'SUCCESS' || $ack == 'SUCCESSWITHWARNING') {
RedirectToPayPal($resArray['TOKEN']);
} else {
//Display a user friendly Error on the page using any of the following error information returned by PayPal
$ErrorCode = urldecode($resArray['L_ERRORCODE0']);
$ErrorShortMsg = urldecode($resArray['L_SHORTMESSAGE0']);
$ErrorLongMsg = urldecode($resArray['L_LONGMESSAGE0']);
$ErrorSeverityCode = urldecode($resArray['L_SEVERITYCODE0']);
echo 'SetExpressCheckout API call failed. ';
echo 'Detailed Error Message: '.$ErrorLongMsg;
echo 'Short Error Message: '.$ErrorShortMsg;
echo 'Error Code: '.$ErrorCode;
echo 'Error Severity Code: '.$ErrorSeverityCode;
var_dump($nvpstr);
}