мне нужно интегрировать платежи с PayPal, и я использую форму интеграциюPaypal Форма оплата правильных рабочий
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="upload" value="1">
...
<input type="hidden" name="return" value="http://example.com/Thankyou.html">
<input type="hidden" name="notify_url" value="http://example.com/IPN">
<input type="image" name="submit" border="0" src="/img/logos_icons/paypal-btn.png" alt="PayPal - The safer, easier way to pay online">
</form>
После этого момента я немного перепутал: когда пользователь нажимает на кнопке купить, перенаправляется на веб-сайт PayPal и когда транзакция завершена, перенаправляется по ссылке «перенастроить» (страница с благодарностью). В то же время PayPal отправляет уведомление (IPN) на «notify_url».
Это правильный рабочий процесс? если да, в методе уведомления я должен заказать приобретенные продукты, но как я могу понять, какая из них является исходной транзакцией, связанной с текущим уведомлением?
Спасибо, я нашел этот пример реализации IPN https://mvcsamples.svn.codeplex.com/svn/trunk/Kona.Web/Controllers/PayPalController.cs, но он снова отправляет запрос на paypal (в IPN-действие), как подтверждение, может быть ... так ли это правильный поток? и вы знаете, почему нам нужно отправить обратно на paypal? – DevT
@DevT сообщение назад в PayPal должно проверить сообщение IPN, полученное вашим сервером, фактически отправлено PayPal. После отправки сообщения PayPal ответит «VERIFIED», если IPN-сообщение действительно и соответствует сообщению, отправленному PayPal. В противном случае он ответит «INVALID». [См. Здесь] (https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNIntro/#protocol_and_arch) для получения дополнительной информации об этом процессе. –
@JasonZ Спасибо за разъяснение – DevT