Как сделать пайпал

Как сделать пайпал Как сделать форму платежей PayPal?

Вобщем поставили передо мной на работе задачу организовать прием платежей в отечественный проект через Paypal. От меня требовалось дать все нужные эти для настройки аккаунта (сам аккаунт настраивался вторым человеком), ну и, фактически, написать скрипт, что и будет принимать эти от paypal-а и начислять деньги юзерам.

Виды платежей

Paypal разрешает принимать пара видов платежей. Вот кое-какие из них:

1. Buy now buttons – единоразовый платеж, для оплаты одного либо нескольких товаров (одолжений). Разрешает задавать сумму платежа, описание товаров (одолжений), количество товаров, адрес, доставки, вес приобретения и т.д. Сумму платежа возможно и не задавать, в этом случае Paypal даст юзеру возможность самостоятельно указать сумму, которую желает заплатить.

2. Donate buttons – впринципе, по функционалу подобна «Buy now», также единоразовый платеж, сумму возможно задать как принудительно, так и оставить на усмотрение юзера. Отоичие в том, что не разрешает указать адрес доставки и все, что с ней (доставкой) связано.

3. Add to cart buttons – разрешает создавать корзину из ваших товаров, на стороне Paypal`а. На вашем сайте юзер может лишь додавать товары в корзину. Дабы просмотреть содержимое корзины либо удалить оттуда какие-либо позиции, придется залогиниться на Paypal.

4. Subscribe buttons – разрешает организовать прием периодических платежей, к примеру, оплата аккаунта, одолжений.

5. Еслть еще подарочные сертификаты, но с ними кроме того не пробовал разобраться.

В моем случае лучшим решением было применение платежей “Buy now”, о них и отправится дальше обращение.

Заюзать “Buy now” на своем сайте возможно двумя методами:

1. создать кнопку c помощью инструментов Paypal’а.

2. создать собственную форму.

Я воспользовался вторым вариантом, хотя бы вследствие того что это разрешает применять собственный личный дизайн. Не смотря на то, что имеется и еще пара плюшек, о них позднее.

Создание формы платежа

Рaypal, что конечно, жестко регламентирует заглавия полей формы. Полный перечень этих полей возможно обнаружить https://cms.paypal.com/us/cgi-bin/?cmd=_render-contentcontent_ID=developer/e_howto_html_Appx_websitestandard_htmlvariables. То что использовано у нас:

— cmd = _xclick – показываем тип платежа “Buy now”;

— business – тут показываем email, аккаунта, куда будут приниматься платежи. Сам адрес должен быть подтвержденным (подтверждается где-то в настройках аккаунта);

— item_name – тут задаем описание товара/услуги. Будет отображаться в Paypal при проведении платежа;

— custom – тут служебная инфа, пригодится позже нам же для идентификации юзера;

— amount – сумма платежа;

— currency – валюта платежа. Вероятные варианты Тут.

— no_shipping =1 – показываем, что доствка не осуществляется.

Настройка аккаунта

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

Paypal поддерживает два способа передачи информации о транзакции отечественному скрипту: PDT (Payment Data Transfer) и IPN (Instant Payment Notification). Как я осознал, отличие в том, что при применении PDT от Paypal’а приходит одно единственное сообщение уже по окончании совершения юзером платежа (т.е. в то время, когда деньги от юзера уже находятся на пути к вашему аккаунту). При применении IPN Paypal генерирует пара сообщений, оповещая нас о каждой отдельной стадии совершения платежа.

Для решения моей задачи в полной мере хватало PDT, что я и заюзал.

Процесс включения PDT обрисован Тут. В том месте внизу имеется раздел Activating PDT.

Сущность PDT — при завершении платежа, Paypalпосылает указанному скрипту GET- зарпос, в котором передает номер транзакции, её статус, сумму и т.д. У самого Paypal’a существует механизм проверки подлинности транзакции — мы отправляем POST-запрос определенного вида на их адрес с взятым номером транзакции. В ответ приходит или код неточности, или описание транзакции — статус, сумма и еще куча всяких служебных данных.

Метод работы скрипта

Фактически, что требуется от скрипта:

1. взять эти сведенья.

2. проверить тип транакции — в случае если употребляется простая оплата (buy now). то тип транзакции должен быть web_accept;

3. контролируем емайл получателя платежа и id аккаунта получателя. (поля bussiness, receiver_email, receiver_id);

4. в поле custom содержится служебная инфа полученная от нас, к примеру

ид юзера — контролируем его.

5. в поле txn_id содежится номер транакции в совокупности paypal. контролируем

дабы не было повторных платежей.

6. затем, в случае если поле payment_status = Complete, на данный момент.е. платеж

нормально закончен, то проводим платеж уже у себя, при любом втором

статусе — какие-то траблы.

валюта и Сумма будут в полях mc_gross и mc_currency.

Полный перечень все параметров передаваемых Paypal’ом при применении PDT (да и при IPN также) Тут.

Сейчас о тех плюшках, каковые давал слово раньше. Относятся они к полю custom, которое мы сами и отправляем Paypal’y. Возможно, само собой разумеется, в том направлении id юзера и не париться, но мы так как легких дорог не ищем.

В это поле в полной мере возможно записать id записи с описанием платежа в отечественной совокупности, а уже в том месте сберигаться юзера, запоминать тип услуги, к которую купил юзер, сумму и т.д. Это разрешит, к примеру, отслеживать приобретения, каковые так и не были оплачены, и, при получении данных от Paypal’a, возможно сверять с сохраненными у нас, что дает маленькой + к секьюрности.

Источник: darina.kiev.ua

Как создать кошелек PayPal

Интересные записи

Похожие статьи, которые вам, наверника будут интересны: