Как проверить статус учетной записи PayPal по электронной почте или мобильному телефону, используя php api?
Хорошо, если я хочу отправить деньги на этот e-mail paypal ( xxx@xx.com
) или мобильный телефон ( 1234567890
)
Прежде чем отправлять деньги, я могу проверить xxx@xx.com
или 1234567890
учетную запись статуса. EG: Active or Not active
Да, вы можете получить статус учетной записи PayPal по электронной почте или по номеру телефона. Для этого вы должны использовать API-интерфейс GETVERIFIEDSTATUS. Вам нужно будет указать имя и фамилию вместе с электронной почтой / телефоном. Пожалуйста, обратитесь к приведенной ниже ссылке для информации об API:
Кроме того, я включил PHP-код:
При использовании электронной почты:
$url = trim("https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus"); //set PayPal Endpoint to sandbox //$url = trim("https://svcs.paypal.com/AdaptiveAccounts/GetVerifiedStatus"); //set PayPal Endpoint to Live $API_UserName = "XXXXXXXXX"; //PayPal Test API Credentials, Replace it with live if in live mode $API_Password = "XXXXXXXX"; $API_Signature = "XXXXXXXX"; $API_AppID = "APP-80W284485P519543T"; //Default App ID for Sandbox, replace it with live id if in live mode $API_RequestFormat = "NV"; $API_ResponseFormat = "NV"; //Create request payload $bodyparams = array ( "requestEnvelope.errorLanguage" => "en_US", "emailAddress" =>"XXXXXXXXX", "firstName" =>"Eshan Business TEST", "lastName" =>" Account", "matchCriteria" => "NAME" ); // convert payload array into url encoded query string $body_data = http_build_query($bodyparams, "", chr(38)); try { //create request and add headers $params = array("http" => array( "method" => "POST", "content" => $body_data, "header" => "X-PAYPAL-SECURITY-USERID: " . $API_UserName . "\r\n" . "X-PAYPAL-SECURITY-SIGNATURE: " . $API_Signature . "\r\n" . "X-PAYPAL-SECURITY-PASSWORD: " . $API_Password . "\r\n" . "X-PAYPAL-APPLICATION-ID: " . $API_AppID . "\r\n" . "X-PAYPAL-REQUEST-DATA-FORMAT: " . $API_RequestFormat . "\r\n" . "X-PAYPAL-RESPONSE-DATA-FORMAT:" . $API_ResponseFormat . "\r\n" )); $ctx = stream_context_create($params); //create stream context $fp = @fopen($url, "r", false, $ctx); //open the stream and send request $response = stream_get_contents($fp); //get response //check to see if stream is open if ($response === false) { throw new Exception("php error message = " . "$php_errormsg"); } fclose($fp); //close the stream //parse the ap key from the response $keyArray = explode("&", $response); foreach ($keyArray as $rVal) { list($qKey, $qVal) = explode ("=", $rVal); $kArray[$qKey] = $qVal; } //print the request to screen for testing purposes echo "Header info:" . "<br>"; print_r($params['http']['header']); echo "<br><br>" . "Request Info:" . "<br>"; print_r(urldecode($params['http']['content'])); echo "<br><br>" . "Response:" . "<br>"; //print the response to screen for testing purposes If ( $kArray["responseEnvelope.ack"] == "Success") { foreach ($kArray as $key =>$value) { echo $key . ": " .$value . "<br/>"; } } else { foreach ($kArray as $key =>$value) { echo $key . ": " .$value . "<br/>"; } } } catch(Exception $e) { echo "Message: ||" .$e->getMessage()."||"; } echo "<br>"; ?>
При использовании номера телефона:
<?php $url = trim("https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus"); //set PayPal Endpoint to sandbox //$url = trim("https://svcs.paypal.com/AdaptiveAccounts/GetVerifiedStatus"); //set PayPal Endpoint to Live $API_UserName = "XXXXXXXXXXXX"; //PayPal Test API Credentials, Replace it with live if in live mode $API_Password = "XXXXXXXXXXXX"; $API_Signature = "XXXXXXXXXXX"; $API_AppID = "APP-80W284485P519543T"; //Default App ID for Sandbox, replace it with live id if in live mode $API_RequestFormat = "NV"; $API_ResponseFormat = "NV"; //Create request payload $bodyparams = array ( "requestEnvelope.errorLanguage" => "en_US", "accountIdentifier.mobilePhoneNumber" =>"4088359375", "firstName" =>"Eshan Personal Test", "lastName" =>" Account", "matchCriteria" => "NAME" ); // convert payload array into url encoded query string $body_data = http_build_query($bodyparams, "", chr(38)); try { //create request and add headers $params = array("http" => array( "method" => "POST", "content" => $body_data, "header" => "X-PAYPAL-SECURITY-USERID: " . $API_UserName . "\r\n" . "X-PAYPAL-SECURITY-SIGNATURE: " . $API_Signature . "\r\n" . "X-PAYPAL-SECURITY-PASSWORD: " . $API_Password . "\r\n" . "X-PAYPAL-APPLICATION-ID: " . $API_AppID . "\r\n" . "X-PAYPAL-REQUEST-DATA-FORMAT: " . $API_RequestFormat . "\r\n" . "X-PAYPAL-RESPONSE-DATA-FORMAT:" . $API_ResponseFormat . "\r\n" )); $ctx = stream_context_create($params); //create stream context $fp = @fopen($url, "r", false, $ctx); //open the stream and send request $response = stream_get_contents($fp); //get response //check to see if stream is open if ($response === false) { throw new Exception("php error message = " . "$php_errormsg"); } fclose($fp); //close the stream //parse the ap key from the response $keyArray = explode("&", $response); foreach ($keyArray as $rVal) { list($qKey, $qVal) = explode ("=", $rVal); $kArray[$qKey] = $qVal; } //print the request to screen for testing purposes echo "Header info:" . "<br>"; print_r($params['http']['header']); echo "<br><br>" . "Request Info:" . "<br>"; print_r(urldecode($params['http']['content'])); echo "<br><br>" . "Response:" . "<br>"; //print the response to screen for testing purposes If ( $kArray["responseEnvelope.ack"] == "Success") { foreach ($kArray as $key =>$value) { echo $key . ": " .$value . "<br/>"; } } else { foreach ($kArray as $key =>$value) { echo $key . ": " .$value . "<br/>"; } } } catch(Exception $e) { echo "Message: ||" .$e->getMessage()."||"; } echo "<br>"; ?>