Хороший день для всех.
У меня есть сайт бронирования. Здесь мне нужно интегрировать PayPal-платеж.
Сценарий выглядит следующим образом: X входит в сайт, заполняет форму большим количеством деталей (имя, период, тип комнаты, что угодно … около 20 полей). Детали отправляются на скрипт, который вычисляет цену.
Теперь мне нужно, чтобы пользователь заплатил. Я должен использовать авторизацию и захват для этого (чтобы иметь возможность отменить платеж в течение срока, конечно).
Первой попыткой было создать кнопку оплаты сейчас. Но такой запрос требует фиксированной цены (и моя генерируется).
Вторая кнопка была добавлена в корзину. То же самое.
После некоторых исследований я обнаружил, что экспресс-проверка – это то, что мне нужно (я думаю … не уверен). Я использовал генератор кода с https://www.paypal-labs.com/integrationwizard/ecpaypal/code.php .
Проблема в том, что для этого требуются некоторые детали доставки и другие бесполезные вещи. Также я не вижу, где я заполняю имя / кредит / любое другое имя …
Я просто хочу простой платеж. В любом случае, я могу использовать форму и отправлять значения по указанному адресу? Или что-то типа того? Как вы знаете … любой нормальный API.
Я недавно сделал это. Вы можете использовать кнопку xclick для PayPal, чтобы отправить в PayPal пользовательские данные (то есть цену и доставку). Затем клиент будет оплачивать через PayPal и отправлять мгновенное уведомление об оплате в файл на вашем сервере по вашему выбору, а затем проверять данные с помощью IPN и обрабатывать порядок, как вам нравится.
<form action="https://secure.paypal.com/uk/cgi-bin/webscr" method="post" name="paypal" id="paypal"> <!-- Prepopulate the PayPal checkout page with customer details, --> <input type="hidden" name="first_name" value="<?php echo Firstname?>"> <input type="hidden" name="last_name" value="<?php echo Lastname?>"> <input type="hidden" name="email" value="<?php echo Email?>"> <input type="hidden" name="address1" value="<?php echo Address?>"> <input type="hidden" name="address2" value="<?php echo Address2?>"> <input type="hidden" name="city" value="<?php echo City?>"> <input type="hidden" name="zip" value="<?php echo Postcode?>"> <input type="hidden" name="day_phone_a" value=""> <input type="hidden" name="day_phone_b" value="<?php echo Mobile?>"> <!-- We don't need to use _ext-enter anymore to prepopulate pages --> <!-- cmd = _xclick will automatically pre populate pages --> <!-- More information: https://www.x.com/docs/DOC-1332 --> <input type="hidden" name="cmd" value="_xclick" /> <input type="hidden" name="business" value="paypal@email.com" /> <input type="hidden" name="cbt" value="Return to Your Business Name" /> <input type="hidden" name="currency_code" value="GBP" /> <!-- Allow the customer to enter the desired quantity --> <input type="hidden" name="quantity" value="1" /> <input type="hidden" name="item_name" value="Name of Item" /> <!-- Custom value you want to send and process back in the IPN --> <input type="hidden" name="custom" value="<?php echo session_id().?>" /> <input type="hidden" name="shipping" value="<?php echo $shipping_price; ?>" /> <input type="hidden" name="invoice" value="<?php echo $invoice_id ?>" /> <input type="hidden" name="amount" value="<?php echo $total_order_price; ?>" /> <input type="hidden" name="return" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/thankyou"/> <input type="hidden" name="cancel_return" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/cancelled" /> <!-- Where to send the PayPal IPN to. --> <input type="hidden" name="notify_url" value="http://<?php echo $_SERVER['SERVER_NAME']?>/shop/paypal/process" /> </form>
После того, как клиент заплатит, PayPal уведомит ваш скрипт, и после этого вы сможете делать все, что захотите, чтобы обработать успешный платеж.
Для обработки платежа в вашем файле PHP: разработчики Paypal LINK
* NEVER TRUST ANY USER SUBMITTED DATA *
Со всеми транзакциями PayPal пользователи могут редактировать данные в форме и отправлять нежелательные или неправильные данные. Вы должны сохранить все свои переменные (например, ID, сумма, доставка и т. Д.) В базе данных и подтвердить, когда запрос IPN будет получен обратно из PayPal (чтобы убедиться, что они совпадают).
Рассматривайте транзакцию PayPal с той же безопасностью, что и с данными SQL, избегайте всех переменных, никогда не доверяйте никаким пользовательским данным и всегда проверяйте свои данные.
Вы имеете в виду, что-то вроде этого?
http://net.tutsplus.com/tutorials/html-css-techniques/creating-a-paypal-payment-form/
Сначала вам нужно прочитать эти статьи, его в формате pdf, загрузить его и провести некоторое время, чтобы пройти его, руководство по целочисленной платежной системе Paypal.
https://cms.paypal.com/cms_content/en_US/files/developer/PP_WPP_IntegrationGuide.pdf
https://cms.paypal.com/cms_content/US/en_US/files/developer/PP_ExpressCheckout_IntegrationGuide.pdf
Надеюсь это поможет.