Spec-Zone.ru › Web APIs

Концепции обработки платежей

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

API Запроса платежа упрощает обработку платежей на веб-сайте или в приложении. В этой статье мы рассмотрим, как работает API, и что делает каждый его компонент.

Терминология

Прежде чем перейти к деталям работы API, вам необходимо знать некоторые понятия.

получатель (или продавец)

Продавец — физическое или юридическое лицо, чей веб-сайт или приложение хочет получить деньги через API запроса платежа.

плательщик

Физическое или юридическое лицо, совершающее покупку с помощью веб-сайта или приложения. Плательщик проходит аутентификацию, затем авторизует платеж, как требуется методом оплаты.

метод оплаты

Инструмент, посредством которого производится оплата, например, кредитная карта или онлайн-сервис оплаты.

поставщик метода оплаты

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

обработчик платежей

Реализация кода, необходимая для взаимодействия с конкретным поставщиком метода оплаты для обработки платежей.

Некоторые обработчики платежей используют валидацию продавца, которая представляет собой процесс проверки подлинности продавца каким-либо способом, обычно с помощью какой-либо криптографической реакции, такой как открытый ключ. Проверенным продавцам разрешено взаимодействовать с обработчиком платежей.

Идентификаторы методов оплаты

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

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

Стандартизированные идентификаторы методов оплаты перечислены в реестре методов оплаты.

secure-payment-confirmation

Идентифицирует метод безопасной подтверждения платежа. Данные запроса платежа для этого метода определяются словарем SecurePaymentConfirmationRequest. Дополнительную информацию можно найти в разделе Использование безопасного подтверждения платежа.

basic-card

Этот идентификатор метода оплаты предназначался для облегчения платежей с использованием карт в Интернете с помощью API запроса платежа. Группа разработчиков веб-платежей Web Payments Working Group устарела этот метод оплаты.

URL-идентификаторы методов оплаты

Они могут существенно различаться в зависимости от конкретных особенностей сервиса, и один и тот же сервис обработки платежей может использовать несколько URL-адресов, в зависимости от версии их API, технологии связи и так далее.

https://apple.com/apple-pay

Платежи обрабатываются с помощью сервиса Apple Pay. В настоящее время Apple Pay поддерживается только Safari.

https://google.com/pay

Платежи обрабатываются Google Pay. В настоящее время он поддерживается только браузерами Chrome и Chromium.

Функции обработчика платежей

Пользовательский агент может предоставить встроенную поддержку определенных типов платежей. Кроме того, API обработчика платежей может быть использован для поддержки дополнительных поставщиков методов оплаты в браузерах, которые его поддерживают. В любом случае, обработчик платежей отвечает за:

  1. Обеспечение возможности проведения платежа. Условия, которые делают возможным платеж, зависят от метода оплаты и запроса платежа пользователя; например, если пользователь выбирает оплату кредитной картой, которая не принимается продавцом, платеж не может быть произведен.
  2. Если обработчик платежей поддерживает проверку продавца, реагировать на запросы проверки продавца от пользовательского агента. Подробности см. в разделе Проверка продавца.
  3. Проверить, что предоставленная пользователем информация приводит к валидной транзакции. В результате создается и возвращается объект, специфичный для метода оплаты, который содержит информацию, необходимую для обработки транзакции.

Проверка продавца

Некоторые обработчики платежей используют валидацию продавца, которая представляет собой процесс проверки подлинности продавца каким-либо способом, обычно с использованием какой-либо криптографической проверки. Если продавец не проходит проверку, он не может использовать обработчик платежей.

Точная технология проверки зависит от обработчика платежей, и проверка продавца является полностью необязательной. В конечном итоге, веб-сайт или приложение несут ответственность только за получение ключа проверки продавца и его передачу в метод complete() события.

paymentRequest.onmerchantvalidation = (event) => {
  event.complete(fetchValidationData(event.validationURL));
};

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

Передав эти данные (или Promise, который разрешается на загруженные данные) обработчику платежей, передав их в complete(), обработчик платежей может использовать полученные данные и любой другой алгоритм и данные для проверки возможности использования продавцом обработчика платежей.

Таким образом, важно отметить, что пользовательский агент никогда не отправляет событие merchantvalidation, если пользовательский агент сам не реализует обработчик платежей. Например, Safari предоставляет встроенную поддержку Apple Pay, поэтому обработчик платежей Apple Pay использует это, чтобы гарантировать, что Apple Pay может быть использован для оплаты продавцу, отправив merchantvalidation клиенту, инструктируя его загрузить данные проверки сервера и передать их обработчику платежей, вызвав complete().

Спецификации

Спецификация
Payment Request API
Идентификаторы методов оплаты

См. также

  • API запроса платежа
  • Использование API запроса платежа
  • Представление API запроса платежа для Apple Pay
  • Обучающее пособие по API запроса платежа Google Pay

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API/Concepts

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API