Как правильно внедрить PayPal Advanced Silent Post?

Я внедрил PayPal Advanced Payments с шаблоном C, чтобы обрабатывать как платежи PayPal, так и кредитные карты, не "покидая" мой веб-сайт. Я успешно закодировал свою собственную корзину в Net (VB). У меня есть запрос токена web.request и IFRAME, основанный на ответе токена. Моя мега-путаница заключается в следующем: в настройках PayPal Manager вы указываете страницу "возврата", но ТАКЖЕ указываете страницу "Silent Post", которая получает результаты транзакции из успешной транзакции оплаты кредитной картой или PayPal и Silent Post Страница FAIL, если транзакция не удалась.

Что я не понимаю, и что никто в PayPal, похоже, не может объяснить, как обращаться со страницей Silent Post. Я понимаю, как обрабатывать подтверждение транзакции в PayPal после совершения платежа и как выйти из IFrame, но не понимаю простой концепции:

Разве страница RETURN и страница SILENT POST не должны совпадать? Если нет, то как можно обрабатывать данные POST?

Я хочу обработать утвержденный заказ ПОСЛЕ того, как я получу подтверждение от PayPal, а не раньше (хотя я также публикую его в таблице базы данных "перед утверждением" как ОЖИДАЮЩИЙ, поэтому, если он взорвется, я по крайней мере получу заказы клиента и могу помогите им завершить заказ...) Итак, я использовал ту же страницу для SILENT POST, что и RETURN, извлекая информацию об успешной транзакции и размещая заказ на той же странице, а затем сообщая клиенту "УСПЕШНЫЙ ЗАКАЗ" и показывая им кнопку, где они могут увидеть / распечатать свой полный счет.

Очень запутанно для программиста среднего уровня. Это неправильный подход?

Спасибо!

2 ответа

Вы можете использовать любой URL-адрес, который вы хотите получить в виде сообщения молчания. Лучшее руководство с дополнительной информацией о немом посте следующее: https://www.paypalobjects.com/webstatic/en_US/developer/docs/pdf/pp_payflowlink_guide.pdf

Я нашел то, что я считаю лучшим ответом: "Тихая почта" сводится к тому, чтобы быть простым web.request как пример в C# здесь.

Одна вещь, которую я подозреваю, может быть неправильной в документации PayPal (не уверен в этом!), Что молчаливое сообщение не получает ответа от PayFlow. Скорее, IP-адреса PayPal показывают, что их данные Silent Post поступают из другого источника (см. Этот список IP-адресов для PayPal; обратите внимание на один из них в разделе "Silent Post"). Это по-прежнему сбивает с толку, потому что я не верю, что этот сервер интегрируется с PayPal Advanced, но я отказался от этой идеи "двух ответов" от PayPal и использую web.request а также Request.Form в моем коде позади. https://www.paypal-techsupport.com/app/answers/detail/a_id/883/related/1

Другие вопросы по тегам