Как передать переменные сессии в PayPal с помощью кнопки «Купить сейчас» - PullRequest
5 голосов
/ 03 ноября 2010

Когда мои пользователи входят в систему со своим именем пользователя и идентификатором пользователя, сохраненными в переменной сеанса, они могут делать пожертвования с помощью PayPal.С помощью простой кнопки «Купить сейчас», которую вы можете просто создать на PayPal.

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="XXX">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

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

Мне нужно передать $ _SESSION ['username'] в PayPal, чтобы я мог использовать эту информацию для автоматического предоставления статуса моего дарителя пользователям.Могу ли я добавить что-то вроде:

<input type="hidden" name="custom" value="custom variable">

к моему коду кнопки?Вот больше информации о доступных переменных PayPal информация

Ответы [ 2 ]

3 голосов
/ 12 января 2013

Документация показалась мне запутанной, но после длительного просмотра веб-страниц я обнаружил, что пользовательские переменные не позволяют вам создавать свои собственные скрытые поля, но есть 3 переменные, которые могут быть полезны:

"custom" Необязательная переменная Pass-through для собственных целей отслеживания, которую покупатели не видят. По умолчанию - переменная вам не передается. 256 символов

"item_number" Смотрите описание. Сквозная переменная для отслеживания приобретенного вами продукта или услуги или внесенного вклада. Указанное вами значение возвращается вам после завершения платежа. Эта переменная необходима, если вы хотите, чтобы PayPal отслеживал товарные запасы или отслеживал прибыль и убыток для товара, который продает кнопка.

"invoice" Необязательная переменная Pass-through, которую можно использовать для определения номера счета-фактуры для этой покупки. По умолчанию - переменная вам не передается. 127characters.

Таким образом, если вы сохранили свои данные до того, как кнопка «Купить сейчас» сработала (я делаю это с помощью сводного экрана, который показывает сделанные выборы и сохраняет их в базе данных), вы можете затем ввести значение (например, первичный ключ сохраненные данные) в качестве пользовательского значения.

Обратите внимание, что данные будут опубликованы на назначенной вами странице уведомления о мгновенном платеже.

С

https://www.x.com/developers/paypal/documentation-tools/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables#id08A6HF00TZS

0 голосов
/ 04 ноября 2010

да, вы можете добавить вот так, это правильный путь, и когда paypal пингует вас на IPNHandler, вы получите значение этого custom скрытого поля в строке запроса с тем же именем.

...