PayPal динамический адрес возврата - PullRequest
0 голосов
/ 27 мая 2009

У меня есть один продукт, файл, который создается динамически, и мне нужен PayPal, чтобы вернуть клиента после оплаты по адресу файла. Простая кнопка Buy Now элегантна, но если поставить

<input type="hidden" name="return" value="http://www.mysite.com/x727x7e.dat">

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

Вот пример кода кнопки:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="return" value="http://www.mysite.com/x727x7e.dat">
<input type="hidden" name="cancel_return" value="http://www.mysite.com/nothanx.html">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="1111111111">
<input type="image" src="https://www.paypal.com/en_AU/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_AU/i/scr/pixel.gif" width="1" height="1"></form>

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

Могу ли я создать кнопку (asp.net c #), которая превращает метод post с этими параметрами в paypal, чтобы возвращаемый URL не был виден клиенту?

1 Ответ

0 голосов
/ 27 мая 2009

Да, создайте скрытый ввод с именем return и введите свой обратный адрес. Вы также можете установить скрытый ввод с именем cancel_return и вставить адрес отмены возврата, который используется, если пользователь пытается отменить транзакцию. Наконец, вы можете добавить один с именем notify_url, который получит POST асинхронно после покупки. Адрес return также получит POST , но только если пользователь нажмет, чтобы вернуться.

EDIT

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

Во-вторых, вы можете зарегистрировать ключ SSL в PayPal, а затем зашифровать его. Пожалуйста, смотрите их документацию о том, как это сделать.

Самое худшее, что может сделать пользователь, - это совершить ошибочный платеж через PayPal - с него все равно будут списаны деньги, но он должен будет с открытым лицом заявить, что ваш сайт сказал, что (что бы вы ни продавали) было только 0,01 доллара США вместо 10 долларов США.

Это может или не может быть проблемой в зависимости от того, что вы продаете.

...