Прикручуємо paypal для оплати, блог веселого програміста

Зробити кнопку «Buy now» зовсім не складно, це найпростіша форма ось такого виду:

Коли користувач зробить оплату, він буде перенаправлений на URL, вказаний в параметрі return. Після цього Пейпал сам відправить повідомлення про що надійшов платіж на notify_url, тільки ці дані підлягають ретельній перевірці, оскільки будь-якому зловмисникові не складе особливих труднощів сформувати POST-запит на notify_url. Тому отримані дані треба перезапроса у paypal ще раз, додавши до запиту параметр cmd зі значенням _notify-validate. І якщо paypal підтвердить досконалий платіж, транзакцію можна вважати завершеною.

Для сторонніх розробників Paypal передбачив спеціальний сервіс Paypal Sandbox. який дозволяє тестувати весь процес прийому платежів, з одним невеликим обмеженням. У paypal sandbox не працює IPN (Instant Payment Notification), коли повідомлення про платіж відправляється на notify_url. Для налагодження скриптів по обробці IPN в пісочниці зробили окремий інструмент Instant Payment Notification (IPN) simulator.

Вітання! Дивлюся, Ви теж освоюєте буржуйський ринок

Я віддалено працюю на Одещині, це онлайн платформа, де замовники можуть знайти тих, хто надає потрібні їм послуги, практично в будь-якій країні світу, і віддалено з ними працювати. Україна, звичайно ж, займає одне з провідних місць за обсягом послуг, що надаються.

На перший погляд все досить просто. Але, думаю що не все так очевидно, інакше, не було б багато замовлень на Retacoder'е.

Olga, спасибі за посилання, досить пізнавально.

Noby, не тільки на перший погляд, але і насправді нескладно. Я ще порався з біллінгом від Authorize.Net, там в общем-то теж нескладно. Всі вони схожі в якійсь мірі.

Ось таке питання: є інет-магазин.
Людина робить транзакцію, оплачує на сайті пейпела рахунок і не тисне кнопочку перейти назад на сайт, а у мене за посиланням з цієї кнопки йде повне оформлення замовлення (зміна статусу в бд, повідомлення на пошту покупцеві і продавцеві), як зробити, щоб з пейпела передавалася інфа тоді, коли покупець на кнопку не натиснула.
Дякуємо.

yAnTar, з точки зору безпеки така процедура оформлення замовлення дуже вразлива. Ні в якому разі не можна вірити тим даним, що ми отримуємо GET і POST запитами від користувачів, вірити можна тільки перевіреним запитам від Paypal.

yAnTar, подивися кілька прикладів правильного використання notify_url: