![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mcoil.corals.io/vendor/paypal/rest-api-sdk-php/sample/tls/ |
<?php // # Create Payment using PayPal as payment method // This sample code demonstrates how you can process a // PayPal Account based Payment. // API used: /v1/payments/payment require __DIR__ . '/../bootstrap.php'; use PayPal\Api\Amount; use PayPal\Api\Payer; use PayPal\Api\Payment; use PayPal\Api\RedirectUrls; use PayPal\Api\Transaction; // ## TLS Check // We will add a separate unique endpoint specifically set for testing TLS check instead of using // our conventional sandbox endpoint. // TLS ENDPOINT: https://test-api.sandbox.paypal.com // To test your own implementation to verify it TLS is successfully supported in your application, you can follow // the following steps. // 1. Create an APIContext object as usual. (No Change Required). // 2. Add Configs as shown below to your apiContext object $apiContext->setConfig(array('service.EndPoint'=>"https://test-api.sandbox.paypal.com")); // 3. Thats it. Run your code, and see if it works as normal. // 4. You can check sdk logs to verify it is infact pointing to the above URL instead of default sandbox one. // ### Create a Payment for testing // We will create a conventional paypal payment to verify its creation $payer = new Payer(); $payer->setPaymentMethod("paypal"); $amount = new Amount(); $amount->setCurrency("USD") ->setTotal(20); $transaction = new Transaction(); $transaction->setAmount($amount); $baseUrl = getBaseUrl(); $redirectUrls = new RedirectUrls(); $redirectUrls->setReturnUrl("$baseUrl/ExecutePayment.php?success=true") ->setCancelUrl("$baseUrl/ExecutePayment.php?success=false"); $payment = new Payment(); $payment->setIntent("sale") ->setPayer($payer) ->setRedirectUrls($redirectUrls) ->setTransactions(array($transaction)); // For Sample Purposes Only. $request = clone $payment; $curl_info = curl_version(); try { $payment->create($apiContext); } catch (Exception $ex) { // NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY ResultPrinter::printError("FAILURE: SECURITY WARNING: TLSv1.2 is not supported on this system. Please upgrade your curl to atleast 7.34.0.<br /> - Current Curl Version: " . $curl_info['version'] . "<br /> - Current OpenSSL Version:" . $curl_info['ssl_version'], "Payment", null, $request, $ex); exit(1); } // NOTE: PLEASE DO NOT USE RESULTPRINTER CLASS IN YOUR ORIGINAL CODE. FOR SAMPLE ONLY ResultPrinter::printResult("<b>SUCCESS</b>: Your server supports TLS protocols required for secure connection to PayPal Servers. <br /> - Current Curl Version: " . $curl_info['version'] . "<br /> - Current OpenSSL Version:" . $curl_info['ssl_version'], null, null, null, "SUCCESS. Your system supports TLSv1.2"); return $payment;