PayPal IPN $ _POST ['txn_id'] не установлен - PullRequest
6 голосов
/ 31 января 2012

Я использую песочницу PayPal для создания кнопки подписки, а затем, когда я получаю ответ IPN для подписки или отмены подписки, $ _POST ['txn_id'] никогда не устанавливается.

Поэтому я не надеваюне знаю, как идентифицировать транзакции, чтобы принимать только уникальные

Спасибо!

РЕДАКТИРОВАТЬ: например, вся информация, которую я имею в POST для subscr_cancel: количество1, количество3, address_status, subscr_date, payer_id, address_street, mc_amount1, mc_amount3, кодировка, address_zip, first_name, повторная попытка, address_country_code, address_name, otify_version subscr_id настраиваемый payer_status бизнес-адрес_country address_city verify_sign имя_платца

Ответы [ 2 ]

6 голосов
/ 31 января 2012

Согласно Таблица 2. Сводная информация о переменных подписки :

Для переменных подписки идентификатор транзакции (txn_id) доступен только для платежа USD и мультивалютной оплаты транзакцииtypes (txn_type).

Как и ожидалось, PayPal не будет отправлять txn_id на ваш IPN для типа транзакции subscr_cancel и будет отправлять txn_id только в случае транзакциитип subscr_payment.

Для более подробного объяснения того, какие переменные отправляются на ваш IPN-URL в зависимости от вашей транзакции, ознакомьтесь с Переменными IPN и PDT .

0 голосов
/ 31 января 2012

Вы проверили $_REQUEST['txn_id'], так как это может быть отправлено на ваш сервер через GET.

...