2016-08-04 3 views
1

Я использую библиотеку this, чтобы проверить пользователей PayPal с помощью идентификатора электронной почты. API, который я использую, это GetVerifiedStatus. Разработчик библиотеки предоставляет адрес электронной почты в коде, и он отлично работает. Код возвращает статус «VERIFIED» для его идентификатора электронной почты.Почему API PayPal GetVerifiedStatus не работает для определенной учетной записи

Однако, когда я пытаюсь использовать свой идентификатор электронной почты, он показывает «Невозможно определить статус учетной записи PayPal» с помощью ErrorID -580023. Я попробовал идентификатор электронной почты другого человека и все еще не работает. Я уверен, что нет никаких опечаток в полях электронной почты, firstname, lastname.

Кажется, эти ссылки затрагивают ту же проблему. PayPal GetVerifiedStatus not working with other accounts и Does PayPal's GetVerifiedStatus `belong' to the api caller's country?

Это код, который прилагается к библиотеке. (добавлен мой идентификатор и имя электронной почты в PayPal)

require_once('../includes/config.php'); 
require_once('../autoload.php'); 
    // Create PayPal object. 
$PayPalConfig = array(
         'Sandbox' => $sandbox, 
         'DeveloperAccountEmail' => $developer_account_email, 
         'ApplicationID' => $application_id, 
         'DeviceID' => $device_id, 
         'IPAddress' => $_SERVER['REMOTE_ADDR'], 
         'APIUsername' => $api_username, 
         'APIPassword' => $api_password, 
         'APISignature' => $api_signature, 
         'APISubject' => $api_subject, 
         'PrintHeaders' => $print_headers, 
         'LogResults' => $log_results, 
         'LogPath' => $log_path, 
        ); 

$PayPal = new angelleye\PayPal\Adaptive($PayPalConfig); 

// Prepare request arrays 
$GetVerifiedStatusFields = array(
           'EmailAddress' => 'xxxxxx',      // Required. The email address of the PayPal account holder. 
           'FirstName' => 'xxxxxx',      // The first name of the PayPal account holder. Required if MatchCriteria is NAME 
           'LastName' => 'xxxxxx',       // The last name of the PayPal account holder. Required if MatchCriteria is NAME 
           'MatchCriteria' => 'NAME'     // Required. The criteria must be matched in addition to EmailAddress. Currently, only NAME is supported. Values: NAME, NONE To use NONE you have to be granted advanced permissions 
           ); 

$PayPalRequestData = array('GetVerifiedStatusFields' => $GetVerifiedStatusFields); 

// Pass data into class for processing with PayPal and load the response array into $PayPalResult 
$PayPalResult = $PayPal->GetVerifiedStatus($PayPalRequestData); 

// Write the contents of the response array to the screen for demo purposes. 
echo '<pre />'; 
print_r($PayPalResult); 

Я не понимаю, почему это происходит. Может ли кто-нибудь помочь?

ответ

1

Вы тестируете в режиме песочницы. Вы должны создать учетные записи для песочницы, либо через https://developer.paypal.com/docs/classic/lifecycle/sb_about-accounts/#create-and-manage-sandbox-accounts, либо используя стандартный поток пользователей по адресу https://www.sandbox.paypal.com/us/home.

+0

Я понял это. Он работал на песочнице, и я надеялся, что это будет работать и на производство. Однако проект был остановлен из-за других причин, и я не мог продолжить это. Спасибо за ответ в любом случае !! – webizone