

PayPal - это один из самых инновационных и популярных платежных сервисов, который изменил понимание финансовых транзакций в интернете. Созданный в 1998 году, PayPal стал настоящей революцией в сфере онлайн-платежей, облегчив миллионам пользователей жизнь и деловые операции. В основе его работы лежит идея обеспечения безопасных, простых и мгновенных платежей через интернет. При использовании PayPal пользователи могут осуществлять переводы денежных средств внутри страны или между странами, оплачивать товары и услуги на тысячах онлайн-платформ и веб-магазинах, а также получать платежи от клиентов и партнеров. Уникальность PayPal заключается не только в его простоте использования и глобальной охвате, но и в системе защиты данных и финансовой безопасности. Сервис активно использует передовые технологии шифрования, чтобы обеспечить высокий уровень защиты аккаунтов пользователей и их финансовых средств от мошенничества.
Какие задачи можно решать с помощью API Paypal
- API PayPal позволяет принимать платежи от клиентов на вашем сайте;
- Предусмотрены возможности для обработки споров и разрешения проблемных ситуаций между покупателями и продавцами;
- Можно осуществлять возвраты платежей или отменять неподтвержденные транзакции;
- Вы можете использовать API для проверки статуса платежей;
- API PayPal позволяет получать детальную информацию о каждой транзакции, включая сумму, дату и другие данные;
- Можно проверять баланс на своем счете или счетах пользователей;
Это лишь небольшой перечень задач, которые можно решать с помощью API PayPal. Благодаря многофункциональности и гибкости API, он может быть интегрирован в различные виды бизнесов и платформ для улучшения пользовательского опыта и упрощения финансовых операций.
Подключить API Paypal
PayPal предоставляет два API: REST и IPN. Мы рассмотрим REST API, которое будем называть просто "API". Данное API обеспечивает удобное взаимодействие с необходимыми сущностями и использует формат данных JSON для обмена информацией. PayPal предоставляет два окружения: основное
и песочницу. Для обеспечения безопасности запросов PayPal использует аутентификацию OAuth 2.0. Поэтому для взаимодействия с API необходимо получить токен доступа. Для получения токена нужно отправить POST-запрос на путь "v1/oauth2/token" с параметром "grant_type", значение которого равно "client_credentials", и с передачей заголовка "Authorization" со значением "Basic " . base64_encode("$clientId:$secret").
Полученный токен можно использовать для подписи всех последующих запросов в течение некоторого времени. Данные $clientId и $secret можно получить непосредственно в кабинете PayPal. Там же можно изменить режим работы приложения. За исключением запроса на получение токена доступа, все остальные запросы могут быть отправлены в формате JSON.
Обычно полученного токена достаточно для выполнения платежей, просмотра истории платежей и других операций. Однако, история по умолчанию недоступна, и для ее использования следует разрешить соответствующую опцию в личном кабинете PayPal. В тестовой среде по умолчанию история платежей пуста, и для работы с уже существующими платежами их необходимо создать.
Для некоторых запросов уровень защиты повышен, и для выполнения определенных операций, например, проведения возврата платежа, требуется подписать запрос еще одной подписью. Для этого необходимо передать заголовок "PayPal-Auth-Assertion" со значением, которое является конкатенацией точкой base64-зашифрованных JSON-строк, полученных из массивов ['alg' => 'none'] и ['iss' => $clientId, 'email' => $email]. Параметр $clientId был упомянут ранее, а $email представляет собой адрес электронной почты пользователя PayPal, на которую зарегистрирован его аккаунт. Важно отметить, что при использовании среды "песочница" PayPal генерирует тестовый e-mail, поэтому будьте внимательны при проведении тестовых операций.
Кроме того, вместо e-email во втором массиве можно использовать 'payer_id' со значением payer_id аккаунта пользователя. Следует также отметить, что в результирующей строке между двумя шифрованными строками должна быть точка, которую PayPal будет использовать как разделитель.
Например, на языке программирования PHP генерация второй подписи будет выглядеть следующим образом:
$joseHeader = base64_encode(json_encode(['alg' => 'none']));
$payload = base64_encode(json_encode([
'iss' => $clientId,
'email' => $email,
]));
return $joseHeader . '.' . $payload;
}
Для правильной реализации обработки ошибок стоит учесть два типа ситуаций: ошибки доступа, которые могут возникнуть при неудачной попытке получения токена, и ошибки валидации. Поэтому в вашей системе потребуются два механизма для обработки ошибок с разными форматами.
Webhooks Paypal
Webhooks - это механизм, который позволяет PayPal API отправлять уведомления о событиях вашему серверу в реальном времени. С помощью вебхуков ваше приложение может автоматически получать информацию о различных событиях, связанных с вашими транзакциями и аккаунтом PayPal, без необходимости постоянно опрашивать API для получения обновлений. Когда происходит событие, к которому привязан вебхук, PayPal отправляет POST-запрос с данными о событии на указанный вами URL вашего сервера. Таким образом, ваш сервер может реагировать на эти уведомления и выполнять необходимые действия в соответствии с событием.
Например, вы можете использовать вебхуки для следующих сценариев:
- При получении уведомления о завершенном платеже, вы можете обновить статус заказа в вашей системе или предоставить пользователю доступ к вашему контенту или услугам;
- Если покупатель запрашивает возврат средств, вы можете получить уведомление о возврате и обновить статус транзакции в вашей системе;
- Если возникают споры или конфликты, вы можете получать уведомления о них и принимать соответствующие действия.
Для использования вебхуков вам необходимо выполнить следующие шаги:
- Создайте конечную точку на вашем сервере (URL), куда PayPal будет отправлять уведомления о событиях;
- Вам нужно подписаться на конкретные события, которые вы хотите отслеживать. Например, подтверждение платежа, возврат средств, отмена подписки и т. д.;
- При создании вебхука вам необходимо указать токен подлинности (Webhook Verification Token), чтобы ваш сервер мог проверить, что уведомления от PayPal действительны;
- После настройки вебхука рекомендуется протестировать его в тестовой среде, чтобы убедиться, что ваш сервер правильно обрабатывает уведомления.
PayPal предоставляет детальную документацию по работе с вебхуками, включая список поддерживаемых событий и форматы данных, которые вы получите при каждом событии. Убедитесь, что ваш сервер обрабатывает уведомления безопасным и надежным способом, чтобы избежать потери данных или некорректных действий.
Компания Asabix обладает опытом подключения API PayPal и других сервисов. Если вам нужна помощь или услуги по подключению API, свяжитесь с нами любым удобным способом или оставьте заявку на странице интеграция API любой сложности.
Статьи, которые могут вас также заинтересовать

Готовы Начать? Дайте нам знать!
Poland, Warsaw, 00-842
Łucka street 15/204
Пн-Пт 9.00 - 19.00