CI Merchant нет выходных

Я пытаюсь использовать библиотеку CI Merchant для codeignator, вот мой код:

$this->load->library('merchant');
    $this->merchant->load('paypal_express');
    $settings = array(
        'username' => 'api.sandbox.paypal.com',
        'password' => 'AQHaXxDW3dlKDRDJ7lDtGr4w8-reNNfvPFUKmEr9npMzYjZ2WIbfqqI3VL2C',
        'signature' => 'EMbUfhBCqBZw8hhH6q8VZT_53-xwoOs6_lotS68I7qrY5iyHPLgDitrsAZj5',
        'test_mode' => true);
    $this->merchant->initialize($settings);
    $params = array(
        'amount' => 100.00,
        'currency' => 'USD',
        'return_url' => 'https://www.example.com/checkout/payment_return/123',
        'cancel_url' => 'https://www.example.com/checkout');
    $response = $this->merchant->purchase($params);
    echo '<pre>';
    print_r($response);
    echo '</pre>';

но когда я запускаю его локально, вот результат:

    Merchant_response Object
(
[_status:protected] => failed
[_message:protected] => error setting certificate verify locations:
CAfile: C:\xampp\htdocs\egyptianornaments\application\config/cacert.pem
CApath: none
[_reference:protected] => 
[_data:protected] => 
[_redirect_url:protected] => 
[_redirect_method:protected] => GET
[_redirect_message:protected] => 
[_redirect_data:protected] => 
)

и когда я запускаю на сервере, я получаю пустую страницу, так что я делаю не так?

1 ответ

Решение

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

Я не знаком с библиотекой, которую вы используете, но должен быть какой-то способ установить это. Возможно, вы захотите взглянуть на мою собственную библиотеку CodeIgniter для PayPal, которая довольно популярна.

Однако я фактически прекратил обслуживание этой специфичной для CI библиотеки, потому что теперь моя общая библиотека PHP для PayPal обновлена ​​для PHP 5.3+ и работает с Composer / Packagist, что позволяет вам использовать ее в CodeIgniter или любой другой среде.

На сегодняшний день библиотека CI не сильно отстает, но, опять же, я больше не обновляю ее. Сейчас я поддерживаю только общую версию, так как она работает везде.

В любом случае, это делает каждый вызов PayPal API очень простым для вас.

Другие вопросы по тегам