Я уже некоторое время проводил мозговой штурм по этому вопросу и, наконец, решил задать вопрос здесь.
я использую PayPal-PHP-SDK (restAPI) для обработки платежей. И я не могу заставить его перейти к живой конечной точке (api.paypal.com) и всегда идет в песочницу (api.sandbox.paypal.com)
Прогресс: Использование учетных данных песочницы (ID клиента а также clientSecret) в ‘bootstarp.php’ и ‘Режим’ установлен в «Песочнице» в ‘sdk_config.ini’ я успешно выполнил несколько транзакций песочницы и завершил все остальные части проекта. Теперь единственная часть — заставить его жить, что фактически является ахиллесовой пятой проекта.
Что я пробовал: Я заменил учетные данные песочницы живыми от клиента. От которого он получил https://developer.paypal.com/webapps/developer/applications/myapps затем под приложением, нажав «Показать» Живая учетные данные. Я также изменил Режим в жить в ‘sdk_config.ini’. Но все же это приводит меня к конечной точке песочницы.
РЕДАКТИРОВАТЬ: при создании контекста API в bootstarp.php есть режим, который я также установил, чтобы жить, код ниже.
$apiContext->setConfig(
array(
'mode' => 'live',
'http.ConnectionTimeOut' => 30,
'log.LogEnabled' => true,
'log.FileName' => '../PayPal.log',
'log.LogLevel' => 'FINE',
'validation.level' => 'log'
)
);
Может кто-нибудь предложить мне, что мне здесь не хватает, так как я не получаю ошибки для отладки и посмотреть дальше. За любую помощь или совет, спасибо заранее.
Вы изменили режим в bootstrap.php? Кажется, вы можете использовать конфигурацию в bootstrap.php или в файле sdk_config.ini, но не оба одновременно. Убедитесь, что режим включен в файл bootstrap.php, если путь sdk_config.ini закомментирован, как показано ниже (из файла bootstrap.php)
// Register the sdk_config.ini file in current directory
// as the configuration source.
/*
if(!defined("PP_CONFIG_PATH")) {
define("PP_CONFIG_PATH", __DIR__);
}
*/
Возможно, это более уместно в качестве комментария к решению Майка Миллера, но мне не хватает представителя, извините.
Я перешел из песочницы Paypal API к жизни буквально пять минут назад, используя ваш вопрос и ответ Майка для получения информации о том, как это сделать.
Единственными вещами, которые я изменил, были ценности ID клиента а также clientSecret в bootstrap.php, и Режим (от «песочницы» до «вживую»), как вы и задали в вопросе. Я не редактировал файл ‘sdk_config.ini’ вообще, и путь все равно закомментирован, согласно ответу Майка.
Я отмечаю, что вы называете файл «bootstrap.php» как «bootstarp.php» — это не имеет к этому никакого отношения, не так ли?
У меня была та же проблема, которую я не мог решить.
Я не горжусь своим решением, потому что оно совсем не элегантно, но оно сработало, чтобы начать продавать.
Я модифицировал файл PayPalConstants.php
(находится в ...\PayPal-PHP-SDK\paypal\rest-api-sdk-php\lib\PayPal\Core\PayPalConstants.php
)
Я только что изменил маршруты песочницы для живых маршрутов:
const REST_SANDBOX_ENDPOINT = "https://api.paypal.com/";
const OPENID_REDIRECT_SANDBOX_URL = "https://www.paypal.com/webapps/auth/protocol/openidconnect";