API PayPal - убедитесь, что учетная запись действительна/существует/проверена

Кто-нибудь мог проверить действительность учетной записи PayPal только по адресу электронной почты?

AdaptiveAccounts GetVerifiedStatus (в собственных словах PayPal) предназначен только для использования их ключевыми стратегическими клиентами (см. ниже), и я не могу найти другой способ проверить на основе адреса электронной почты, существует ли учетная запись и проверяется.

Даже если действительный поиск NAME со всеми полями не работает, попробуйте сами:

https://devtools-paypal.com/apiexplorer/AdaptiveAccounts

Я использую их Adaptive Payments в течение некоторого времени и постоянно удивляюсь тому, как многие из наших продавцов ошибочно входят в свою учетную запись PayPal на нашем сайте.

Кажется, PayPal рада предоставить услуги для принятия наших платежей и комиссионных, но не желает предоставить основную и очень базовую функцию, чтобы иметь возможность проверять приемники перед обработкой.

Ответ PayPal Support на мой запрос к ним:

Единственный API, который мы видим для проверки, является ли учетная запись PayPal Verified, является API GetVerifiedStatus. Значение NONE для matchCriteria поддерживается, но только для очень крупных стратегических партнеров и/или реальных финансовых учреждений. Наша команда разработчиков приложений имеет строгие требования для обеспечения доступа к этой ценности. К сожалению, в настоящее время у нас нет API, который просто скажет вам, подтвержден ли адрес электронной почты в учетной записи.

Благодарим вас за терпение.

Надеюсь, что какой-то взломать кого-то другого удалось выработать для выполнения этой функции?

Ответ 1

Как один раз, вы можете использовать "забыли пароль"? возможность ввести электронное письмо, и вам будет сообщено, нет ли учетной записи с этим письмом.

Форма включает CAPTCHA, поэтому, вероятно, не так много, если вы ищете решение для кодирования.

Ответ 2

Вы можете отправить запрос в Pay API, пытаясь настроить цепочку платежей с помощью электронного письма, которое будет проверяться как вторичный ресивер. Поскольку приложенные платежи не принимают платежи получателям, у которых нет учетной записи, API вернет ошибку, когда входной адрес электронной почты не соответствует учетной записи PayPal (иначе он вернет ключ-ключ, который вы просто выбросите).

Ответ 3

<?php
// create a new cURL resource
$ch = curl_init();

$ppUserID = "******************"; //Take it from   sandbox dashboard for test mode or take it from paypal.com account in production mode, help: https://developer.paypal.com/docs/classic/api/apiCredentials/
$ppPass = "*************"; //Take it from sandbox dashboard for test mode or take it from paypal.com account in production mode, help: https://developer.paypal.com/docs/classic/api/apiCredentials/
$ppSign = "********************"; //Take it from sandbox dashboard for test mode or take it from paypal.com account in production mode, help: https://developer.paypal.com/docs/classic/api/apiCredentials/
$ppAppID = "***********"; //if it is sandbox then app id is always: APP-80W284485P519543T
$sandboxEmail = "********************"; //comment this line if you want to use it in production mode.It is just for sandbox mode

$emailAddress = "[email protected]"; //The email address you wana verify

//parameters of requests
$nvpStr = 'emailAddress='.$emailAddress.'&matchCriteria=NONE';

// RequestEnvelope fields
$detailLevel    = urlencode("ReturnAll");
$errorLanguage  = urlencode("en_US");
$nvpreq = "requestEnvelope.errorLanguage=$errorLanguage&requestEnvelope.detailLevel=$detailLevel&";
$nvpreq .= "&$nvpStr";
curl_setopt($ch, CURLOPT_POSTFIELDS, $nvpreq);

$headerArray = array(
"X-PAYPAL-SECURITY-USERID:$ppUserID",
"X-PAYPAL-SECURITY-PASSWORD:$ppPass",
"X-PAYPAL-SECURITY-SIGNATURE:$ppSign",
"X-PAYPAL-REQUEST-DATA-FORMAT:NV",
"X-PAYPAL-RESPONSE-DATA-FORMAT:JSON",
"X-PAYPAL-APPLICATION-ID:$ppAppID",
"X-PAYPAL-SANDBOX-EMAIL-ADDRESS:$sandboxEmail" //comment this line in production mode. IT IS JUST FOR SANDBOX TEST 
);

$url="https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus";
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArray);
$paypalResponse = curl_exec($ch);
//echo $paypalResponse;   //if you want to see whole PayPal response then uncomment it.
curl_close($ch);

echo $data = json_decode($paypalResponse);



?>

Ответ 4

Finde VerifiedStatus On Paypal:(Exists an account on payapal)
          GetVerifiedStatusRequest getVerifiedStatusRequest = new GetVerifiedStatusRequest
        {
            emailAddress = email,
            matchCriteria = "NONE"
        };
          AdaptiveAccountsService service = new              AdaptiveAccountsService(Configuration.GetAcctAndConfig());
        GetVerifiedStatusResponse response =  service.GetVerifiedStatus(getVerifiedStatusRequest);
        return response.accountStatus.ToString();