PayPal REST api биллинг соглашение Поиск транзакций

0

Для моего проекта я пытаюсь использовать REST api для обработки повторяющихся платежей. Я установил соглашение о выставлении счетов, и все работает нормально, но у меня возникают проблемы с поиском транзакций.

Я использую curl в PHP.

Это мой код:

$url =  "https://api.sandbox.paypal.com/v1/payments/billing-agreements/I-8E0VJL3DEL9N//transaction?start-date=2012-04-10&end-date=2014-11-18" ;

curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_HTTPGET, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Authorization: Bearer A015zQG9wQ6uBkQE39DRk5eeBVqw67NFVx3ReErsG-80Qwg',
    'Content-Type: application/json'
));

$result = curl_exec($curl);
if(empty($result))die(curl_error($curl)); // Retourne l'erreur
else
{   // Je récupère les infos renvoyés par le serveur
    $json = json_decode($result);
    // Récupération de l'adresse de la transaction
}
curl_close($curl);

// Fin de l'agreement

Когда я использую скрипт, он возвращает мне эту ошибку:

java.lang.NullPointerException

Я не знаю, откуда моя проблема; Я пробовал много разных вещей, но ничего не работает, и у меня все еще есть тот же ответ в $result.

Теги:
curl
paypal

2 ответа

2

Похоже, изменение URL-адреса:

https://api.sandbox.paypal.com/v1/payments/billing-agreements/I-8E0VJL3DEL9N/transactions?start_date=2012-04-10&end_date=2014-11-18

делает трюк:

{
    "agreement_transaction_list": [
        {
            "payer_email": "",
            "payer_name": "Test Buyer",
            "status": "Created",
            "time_stamp": "2014-11-18T18:12:58Z",
            "time_zone": "GMT",
            "transaction_id": "I-8E0VJL3DEL9N",
            "transaction_type": "Recurring Payment"
        },
        {
            "payer_email": "",
            "payer_name": "Test Buyer",
            "status": "Suspended",
            "time_stamp": "2014-11-18T18:14:26Z",
            "time_zone": "GMT",
            "transaction_id": "I-8E0VJL3DEL9N",
            "transaction_type": "Recurring Payment"
        },
        {
            "payer_email": "",
            "payer_name": "Test Buyer",
            "status": "Reactivated",
            "time_stamp": "2014-11-18T18:16:20Z",
            "time_zone": "GMT",
            "transaction_id": "I-8E0VJL3DEL9N",
            "transaction_type": "Recurring Payment"
        }
    ]
}
1

У меня была такая же ошибка при попытке выполнить платеж. Оказалось, что я отправляю неправильный URL. Проверьте правильность URL.

т.е.:

https://api.sandbox.paypal.com/v1/payments/billing-agreements/I-8E0VJL3DEL9N//transactions

вместо:

https://api.sandbox.paypal.com/v1/payments/billing-agreements/I-8E0VJL3DEL9N//transaction (+s)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню