SlideShare a Scribd company logo
1 of 17
Download to read offline
XB SOFTWARE
Paypal + NodeJs
Поташко Александр
Что такое Paypal?
PayPal — способ отправки и получения
средств через Интернет физическими
лицами и компаниями
Проект N
● Поиск работодателями работников в системе с последующей
оплатой труда.
Этапы:
● 1. Поиск работника.
● 2. Оплата по завершению работы.
Paypal
● Создание платежа ( с удержанием выплаты )
● Подтверждение платежа
● Списание денег со счета
● Отправка денег работнику
DEVELOPER.PAYPAL.COM
● Документация
● Тестовый Аккаунт
● Rest API
● Classic API
● NodeJs Module:
● $ npm install paypal-rest-sdk
● https://github.com/paypal/rest-api-sdk-nodejs
Classic APIs
● Express Checkout
● Mass Pay
● Реальный Аккаунт ( paypal.com )
● Тестовый Аккунт ( sandbox.paypal.com )
Paypal NVP : Создание
Запроса
NAME=VALUE&NAME=VALUE&...
● USER
● PWD
● VERSION
● SIGNATURE
● SANDBOX_API_HOST - 'api-3t.sandbox.paypal.com';
● PRODUCTION_API_HOST - 'api-3t.paypal.com';
Express Checkout Actions
● Sale
● Authorization (DoCapture, DoReauthorization, DoVoid)
● Order (DoAuthorization, DoCapture, DoVoid)
MassPay Actions
● MassPay
SetExpressCheckout API Operation (NVP)
Создаем платеж отправляя данные об оплате на Paypal, в результате чего получаем токен, который
будет использован в дальнейших операциях.
Параметры:
- METHOD=SetExpressCheckout
- RETURNUR=localhost:5500/success
- CANCELURL=localhost:5500/cancel
- PAYMENTREQUEST_0_AMT=00.00
- PAYMENTREQUEST_0_ACTION=Authorization
- PAYMENTREQUEST_0_CURRENCYCODE=USD
https://developer.paypal.com/docs/classic/api/merchant/SetExpressCheckout_API_Operation_NVP/
DoExpressCheckoutPayment API Operation (NVP)
Завершаем подтверждение платежа.
Параметры:
- METHOD=DoExpressCheckoutPayment
- TOKEN=$TOKEN
- PAYERID=$PAYERID
- PAYMENTREQUEST_0_PAYMENTACTION=Authorization
- PAYMENTREQUEST_0_AMT=00.00
- PAYMENTREQUEST_0_CURRENCYCODE=USD
https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoExpressCheckoutPayment_API_Operation_NVP/
DoCapture API Operation (NVP)
Списание денег со счета.
Параметры:
- МЕTHOD=DoCapture
- AUTHORIZATIONID=$AUTHORIZATIONID
- AMT=00.00
- CURRENCYCODE=USD
- COMPLETETYPE=Complete
https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoCapture_API_Operation_NVP/
DoVoid API Operation (NVP)
Отмена платежа
Параметры:
- METHOD=DoVoid
- AUTHORIZATIONID=$AUTHORIZATIONID
https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoVoid_API_Operation_NVP/
MassPay
Возможность перевода за один раз деньги на несколько аккаунтов.
Параметры:
- METHOD=MassPay
- EMAILSUBJECT=$EMAIL
Массив Получателей:
- L_EMAIL + INDEX=$RECIPIENTEMAIL
- L_AMT + INDER=00.00
- L_UNIQUEDID + INDEX=$UID
- L_NOTE + INDEX=$NOTE
https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/MassPay_API_Operation_NVP/
Paypal + Беларусь
Ближе к полуночи 17 июня для белорусов стала
доступна регистрация в платежной системе
PayPal.
Подводные камни
● Документация
● Необходимость постоянного общения с тех.
поддержкой.
● Периодические сбои в работе с песочницей.
● Порог вхождения.
Контактная информация
● Веб-разработчик
Александр Поташко
● fantome@xbsoftware.com
● https://www.facebook.com/alexander.potashko

More Related Content

What's hot

Behat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и MinkBehat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и Mink
tyomo4ka
 

What's hot (7)

Behat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и MinkBehat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и Mink
 
Full Stack разработка на JavaScript
Full Stack разработка на JavaScriptFull Stack разработка на JavaScript
Full Stack разработка на JavaScript
 
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
 
External Widgets Performance
External Widgets PerformanceExternal Widgets Performance
External Widgets Performance
 
"Посмотрим на Акку-Джаву" Дмитрий Мантула
"Посмотрим на Акку-Джаву" Дмитрий Мантула"Посмотрим на Акку-Джаву" Дмитрий Мантула
"Посмотрим на Акку-Джаву" Дмитрий Мантула
 
Артем Титаренко
Артем ТитаренкоАртем Титаренко
Артем Титаренко
 
Тестирование и мониторинг производительности фронтенда с помощью sitespeed.io...
Тестирование и мониторинг производительности фронтенда с помощью sitespeed.io...Тестирование и мониторинг производительности фронтенда с помощью sitespeed.io...
Тестирование и мониторинг производительности фронтенда с помощью sitespeed.io...
 

Viewers also liked

Viewers also liked (10)

Files and JavaScript
Files and JavaScriptFiles and JavaScript
Files and JavaScript
 
How to become Famo.us
How to become Famo.usHow to become Famo.us
How to become Famo.us
 
4front en
4front en4front en
4front en
 
Cобытия в JavaScript
Cобытия в JavaScriptCобытия в JavaScript
Cобытия в JavaScript
 
Game physics in JavaScript
Game physics in JavaScriptGame physics in JavaScript
Game physics in JavaScript
 
Постоянная сборка фронтенда – автоматизация конвейера
Постоянная сборка фронтенда – автоматизация конвейераПостоянная сборка фронтенда – автоматизация конвейера
Постоянная сборка фронтенда – автоматизация конвейера
 
Production Ready Javascript With Grunt
Production Ready Javascript With GruntProduction Ready Javascript With Grunt
Production Ready Javascript With Grunt
 
Всё ли ты знаешь о JavaScript ООП?
Всё ли ты знаешь о JavaScript ООП?Всё ли ты знаешь о JavaScript ООП?
Всё ли ты знаешь о JavaScript ООП?
 
Files and JS
Files and JSFiles and JS
Files and JS
 
Flexbox - верстка без float'ов by Dmitry Radyno
Flexbox - верстка без float'ов by Dmitry RadynoFlexbox - верстка без float'ов by Dmitry Radyno
Flexbox - верстка без float'ов by Dmitry Radyno
 

Similar to PayPal интеграция. Запрещенная лекция 18+

Introduction in Node.js (in russian)
Introduction in Node.js (in russian)Introduction in Node.js (in russian)
Introduction in Node.js (in russian)
Mikhail Davydov
 
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDBCodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest
 
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDBСерверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
Stepan Stolyarov
 
Работа с платежными системами в Django (Paypal, WebMoney)
Работа с платежными системами в Django (Paypal, WebMoney)Работа с платежными системами в Django (Paypal, WebMoney)
Работа с платежными системами в Django (Paypal, WebMoney)
proft
 

Similar to PayPal интеграция. Запрещенная лекция 18+ (20)

Mobilefest2012
Mobilefest2012Mobilefest2012
Mobilefest2012
 
Introduction in Node.js (in russian)
Introduction in Node.js (in russian)Introduction in Node.js (in russian)
Introduction in Node.js (in russian)
 
QaApi: взгляд на тестирование с другой стороны баррикад
QaApi: взгляд на тестирование с другой стороны баррикадQaApi: взгляд на тестирование с другой стороны баррикад
QaApi: взгляд на тестирование с другой стороны баррикад
 
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ  #ITmeetingKPINode.js введение в технологию, КПИ  #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPI
 
Опыт разработки и тестирования RESTful JSON сервиса
Опыт разработки и тестирования RESTful JSON сервисаОпыт разработки и тестирования RESTful JSON сервиса
Опыт разработки и тестирования RESTful JSON сервиса
 
Система мониторинга производительности своими руками (QA Fest 2016)
Система мониторинга производительности своими руками (QA Fest 2016)Система мониторинга производительности своими руками (QA Fest 2016)
Система мониторинга производительности своими руками (QA Fest 2016)
 
DevOps для 1С
DevOps для 1СDevOps для 1С
DevOps для 1С
 
Мы делили апельсин
Мы делили апельсинМы делили апельсин
Мы делили апельсин
 
Building better APIs on rails
Building better APIs on railsBuilding better APIs on rails
Building better APIs on rails
 
Будущее ASP.NET
Будущее ASP.NETБудущее ASP.NET
Будущее ASP.NET
 
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
 
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
Как мы разрабатываем новый фронтенд / Филипп Нехаев (Tinkoff.ru)
 
Roman Gorel: Building better APIs on Rails.
Roman Gorel: Building better APIs on Rails.Roman Gorel: Building better APIs on Rails.
Roman Gorel: Building better APIs on Rails.
 
Мониторинг веб приложений на PHP в режиме реального времени с помощью Pinba. ...
Мониторинг веб приложений на PHP в режиме реального времени с помощью Pinba. ...Мониторинг веб приложений на PHP в режиме реального времени с помощью Pinba. ...
Мониторинг веб приложений на PHP в режиме реального времени с помощью Pinba. ...
 
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow Zabbix в сервисной компании  ОНЛАНТА -  Zabbix Meetup Moscow
Zabbix в сервисной компании  ОНЛАНТА - Zabbix Meetup Moscow
 
Опыт тестирования API САПР платформы
Опыт тестирования API САПР платформыОпыт тестирования API САПР платформы
Опыт тестирования API САПР платформы
 
AllcountJS VTB24 loan сonveyor POC
AllcountJS VTB24 loan сonveyor POCAllcountJS VTB24 loan сonveyor POC
AllcountJS VTB24 loan сonveyor POC
 
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDBCodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
 
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDBСерверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
 
Работа с платежными системами в Django (Paypal, WebMoney)
Работа с платежными системами в Django (Paypal, WebMoney)Работа с платежными системами в Django (Paypal, WebMoney)
Работа с платежными системами в Django (Paypal, WebMoney)
 

PayPal интеграция. Запрещенная лекция 18+

  • 1. XB SOFTWARE Paypal + NodeJs Поташко Александр
  • 2. Что такое Paypal? PayPal — способ отправки и получения средств через Интернет физическими лицами и компаниями
  • 3. Проект N ● Поиск работодателями работников в системе с последующей оплатой труда. Этапы: ● 1. Поиск работника. ● 2. Оплата по завершению работы.
  • 4. Paypal ● Создание платежа ( с удержанием выплаты ) ● Подтверждение платежа ● Списание денег со счета ● Отправка денег работнику
  • 5. DEVELOPER.PAYPAL.COM ● Документация ● Тестовый Аккаунт ● Rest API ● Classic API ● NodeJs Module: ● $ npm install paypal-rest-sdk ● https://github.com/paypal/rest-api-sdk-nodejs
  • 6. Classic APIs ● Express Checkout ● Mass Pay ● Реальный Аккаунт ( paypal.com ) ● Тестовый Аккунт ( sandbox.paypal.com )
  • 7. Paypal NVP : Создание Запроса NAME=VALUE&NAME=VALUE&... ● USER ● PWD ● VERSION ● SIGNATURE ● SANDBOX_API_HOST - 'api-3t.sandbox.paypal.com'; ● PRODUCTION_API_HOST - 'api-3t.paypal.com';
  • 8. Express Checkout Actions ● Sale ● Authorization (DoCapture, DoReauthorization, DoVoid) ● Order (DoAuthorization, DoCapture, DoVoid) MassPay Actions ● MassPay
  • 9. SetExpressCheckout API Operation (NVP) Создаем платеж отправляя данные об оплате на Paypal, в результате чего получаем токен, который будет использован в дальнейших операциях. Параметры: - METHOD=SetExpressCheckout - RETURNUR=localhost:5500/success - CANCELURL=localhost:5500/cancel - PAYMENTREQUEST_0_AMT=00.00 - PAYMENTREQUEST_0_ACTION=Authorization - PAYMENTREQUEST_0_CURRENCYCODE=USD https://developer.paypal.com/docs/classic/api/merchant/SetExpressCheckout_API_Operation_NVP/
  • 10.
  • 11. DoExpressCheckoutPayment API Operation (NVP) Завершаем подтверждение платежа. Параметры: - METHOD=DoExpressCheckoutPayment - TOKEN=$TOKEN - PAYERID=$PAYERID - PAYMENTREQUEST_0_PAYMENTACTION=Authorization - PAYMENTREQUEST_0_AMT=00.00 - PAYMENTREQUEST_0_CURRENCYCODE=USD https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoExpressCheckoutPayment_API_Operation_NVP/
  • 12. DoCapture API Operation (NVP) Списание денег со счета. Параметры: - МЕTHOD=DoCapture - AUTHORIZATIONID=$AUTHORIZATIONID - AMT=00.00 - CURRENCYCODE=USD - COMPLETETYPE=Complete https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoCapture_API_Operation_NVP/
  • 13. DoVoid API Operation (NVP) Отмена платежа Параметры: - METHOD=DoVoid - AUTHORIZATIONID=$AUTHORIZATIONID https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/DoVoid_API_Operation_NVP/
  • 14. MassPay Возможность перевода за один раз деньги на несколько аккаунтов. Параметры: - METHOD=MassPay - EMAILSUBJECT=$EMAIL Массив Получателей: - L_EMAIL + INDEX=$RECIPIENTEMAIL - L_AMT + INDER=00.00 - L_UNIQUEDID + INDEX=$UID - L_NOTE + INDEX=$NOTE https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/MassPay_API_Operation_NVP/
  • 15. Paypal + Беларусь Ближе к полуночи 17 июня для белорусов стала доступна регистрация в платежной системе PayPal.
  • 16. Подводные камни ● Документация ● Необходимость постоянного общения с тех. поддержкой. ● Периодические сбои в работе с песочницей. ● Порог вхождения.
  • 17. Контактная информация ● Веб-разработчик Александр Поташко ● fantome@xbsoftware.com ● https://www.facebook.com/alexander.potashko