Google Pay
Обзор
Введение
Google Pay — метод, позволяющий проводить платежи в разных валютах с использованием сервисов Google в разных странах. Для этого метода в платёжной платформе ecommpay поддерживаются разовые и повторяемые оплаты, возвраты, выплаты и проверка действительности карты пользователя.
В этой статье представлена информация о работе с методом Google Pay: обзорный раздел с общими сведениями и последующие разделы с информацией о действиях, необходимых со стороны мерчанта для решения разных задач.
Характеристика
Платёжный метод | платежи с использованием электронных кошельков |
---|---|
Платёжные инструменты | платёжные карты |
Регионы использования | список доступен по ссылке |
Валюты платежей | все валюты, поддерживаемые платёжными системами American Express, Mastercard и Visa в доступных регионах |
Конвертация валют | На стороне ecommpay |
Оплаты | + |
Повторяемые оплаты | + |
Полные возвраты | + |
Частичные возвраты | + |
Выплаты | + |
Проверка действительности | + |
Опротестования | + |
Особенности |
|
Организация и стоимость подключения | по согласованию с курирующим менеджером ecommpay, дополнительную информацию можно получить ecommpay shop |
Схема работы
В проведении отдельного платежа с использованием Google Pay задействуются веб-сервис мерчанта, один из интерфейсов и платёжная платформа ecommpay, а также технические средства Google Pay.
Основные операции
Для проведения платежей и выполнения операций с использованием метода Google Pay могут применяться различные интерфейсы платёжной платформы. Так, оплаты могут проводиться через Payment Page, Gate и Dashboard (с применением платёжных ссылок), а возвраты и выплаты — через Gate и Dashboard.
Сценарии использования
Проведение оплат с использованием метода Google Pay осуществляется с регистрацией платёжной карты пользователя в сервисе Google Pay и выполнения последующих необходимых действий, выполнение возвратов — с заявкой со стороны пользователя и уведомлением со стороны веб-сервиса, проведение выплат — с уведомлением пользователей через веб-сервис мерчанта..
Сценарии выполнения операций через основные интерфейсы платёжной платформы соответствуют представленным на схемах. При использовании дополнительных возможностей (таких как платёжные ссылки) сценарии выполнения операций методом Google Pay соответствуют специфике этих возможностей.
Разовые оплаты через Payment Page
Общая информация
Для проведения оплаты через Payment Page с использованием метода Google Pay со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате. Полная схема проведения оплаты выглядит следующим образом.
Информация о форматах запросов и оповещений, используемых для проведения оплат методом Google Pay через Payment Page, приведена далее в этом разделе; общая информация о работе с Payment Page API — в отдельной статье Организация взаимодействия.
Формат запросов
При формировании запросов на открытие платёжной формы с применением метода Google Pay необходимо учитывать следующее:
- Должен использоваться базовый минимум параметров, обязательный для любого платежа:
project_id
— идентификатор проекта, полученный от ecommpay при интеграции;payment_id
— идентификатор платежа, уникальный в рамках проекта;payment_currency
— код валюты платежа в формате ISO-4217 alpha-3;payment_amount
— сумма платежа в дробных единицах валюты;customer_id
— идентификатор пользователя в рамках проекта.
- Должен использоваться базовый минимум параметров:
project_id
,payment_id
,payment_currency
,payment_amount
,customer_id
. - Можно выбирать вариант отображения кнопки
Google Pay
на Payment Page:- Отображение кнопки на странице для ввода данных платёжной карты. Предварительно пользователю необходимо выбирать оплату с использованием карт среди прочих платёжных методов. Этот вариант отображения задан по умолчанию.
- Отображение кнопки на странице для выбора метода оплаты среди прочих платёжных методов. Для этого необходимо обращаться в техническую поддержку ecommpay.
- Отображение кнопки на странице для ввода данных карты, когда пользователю сразу открывается эта страница и не надо предварительно выбирать оплату с использованием карт. В данном случае оба платёжных метода доступны пользователю. Для этого используется предварительный выбор метода оплаты с использованием карт и необходимо указывать код
card
в параметреforce_payment_method
. - Отображение одной кнопки на странице выбора метода оплаты. Для этого используется предварительный выбор метода Google Pay и необходимо указывать код платёжного метода
google_pay_host
в параметреforce_payment_method
.
- Дополнительно могут использоваться любые другие параметры из числа доступных для работы с Payment Page (подробнее).
- После указания всех целевых параметров необходимо составлять подпись (подробнее).
Таким образом, корректный запрос на открытие платёжной формы с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), идентификатор пользователя и подпись.
Формат оповещений
Для оповещений о результатах оплат с применением метода Google Pay используется типовой формат, описание которого представлено в статье Оповещения.
К особенностям метода Google Pay можно отнести то, что в оповещениях для оплат, сопровождающихся аутентификацией 3‑D Secure, передаётся код индикатора ECI (подробнее) в параметре operation.eci
, а в качестве служебного кода метода в параметре payment.method
указывается значение card
. Вместе с тем, в оповещениях для оплат без аутентификации 3‑D Secure не передаётся код индикатора ECI, а в качестве служебного кода метода может указываться значение card
или etoken-google
.
К особенностям оповещений в случае с Google Pay можно отнести то, что в параметре token
объекта account
указывается значение токена карты. В случае указания кода метода etoken-google
этот токен можно использовать при запросах на выплаты, а когда указывается служебный код метода card
, то токен можно использовать как для выплат, так и для оплат.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 688
была успешно проведена оплата в размере 1 000,00 USD
с банковской карты 431422******0056
без проведения аутентификации 3‑D Secure.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 688
была успешно проведена оплата в размере 1 000,00 USD
с банковской карты 431422******0056
с проведением аутентификации 3‑D Secure.
В следующем примере оплата была отклонена, так как пользователь не прошел аутентификацию 3‑D Secure.
Дополнительные материалы
Для организации работы с оплатами через Payment Page также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как организовать взаимодействие веб-сервиса с платёжной платформой через Payment Page.
- Работа с подписью к данным — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Разовая оплата в одну стадию — о том, как проводить разовые оплаты через Payment Page.
- Информация о выполнении операций — о служебных кодах, которые используются в платёжной платформе, чтобы фиксировать информацию о выполнении операций.
Разовые оплаты через Gate
Общая информация
Для работы с оплатами через Gate с использованием метода Google Pay со стороны мерчанта необходимо придерживаться политик использования Google Pay API и принимать условия предоставления услуг Google Pay. Вместе с тем, со стороны веб-сервиса необходимо:
- Выполнить начальную настройку в соответствии с требованиями Google и свериться с контрольным списком интеграции.
- Зарегистрироваться в сервисе Google и получить Google merchant ID.
- Заполнить заявку на сопровождение интеграции с Google Pay API специалистами Google и выполнить дальнейшие действия по запросам этих специалистов. При этом может потребоваться предоставить Google дополнительную информацию об интеграции.
Также следует иметь в виду, что оплаты с использованием метода Google Pay могут проводиться по двум сценариям:
- через приложение Google Pay (когда оно установлено на совместимом устройстве пользователя);
- без использования приложения Google Pay, как типичный карточный платёж (когда приложение не установлено на устройстве пользователя или устройство не совместимо с ним).
В первом случае оплата проводится без аутентификации 3‑D Secure, а во втором случае может проводиться как с аутентификацией, так и без неё. Для обработки таких ситуаций на стороне веб-сервиса необходимо настроить реагирование на оповещения с информацией о перенаправлении пользователя и поддержать два сценария работы.
В сценарии с использованием метода Google Pay для оплаты без аутентификации 3‑D Secure со стороны веб-сервиса необходимо:
- Встроить кнопку
Google Pay
, соблюдая рекомендации по правильному использованию бренда и реализовать процесс получения токена с карточными данными пользователя от сервиса Google Pay. - Отправить запрос в сервис Google Pay на открытие платёжной формы или приложения Google Pay со списком сохраненных карт, доступных пользователю для оплаты.
- Отправить запрос в сервис Google Pay для получения токена с зашифрованными данными карты, выбранной пользователем.
- Отправить запрос, содержащий токен и другие требуемые параметры и подпись, на рабочий URL ecommpay.
- Принять оповещение о результате оплаты от платформы.
В сценарии с использованием метода Google Pay для оплаты с аутентификацией 3‑D Secure со стороны веб-сервиса необходимо:
- Встроить кнопку
Google Pay
, соблюдая рекомендации по правильному использованию бренда и реализовать процесс получения токена с карточными данными пользователя от сервиса Google Pay. - Отправить запрос в сервис Google Pay на открытие платёжной формы или приложения Google Pay со списком сохраненных карт, доступных пользователю для оплаты.
- Отправить запрос в сервис Google Pay для получения токена с зашифрованными данными карты, выбранной пользователем.
- Отправить запрос, содержащий токен и другие требуемые параметры и подпись, на рабочий URL ecommpay.
- Получить промежуточное оповещение от платформы с данными для перенаправления пользователя на страницу аутентификации.
- Перенаправить пользователя на страницу аутентификации для прохождения проверки 3‑D Secure.
- Отправить запрос на продолжение проведения платежа с результатом аутентификации в платёжную платформу.
- Принять итоговое оповещение о результате оплаты от платформы.
Полные схемы проведения оплат выглядят следующим образом.
Информация о форматах запросов и оповещений, используемых для проведения оплат методом Google Pay через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.
Формат запросов
При работе с запросами на оплаты с применением метода Google Pay необходимо учитывать следующее:
- Для инициирования каждой оплаты должен использоваться отдельный POST-запрос к одной из следующих конечных точек:
- /v2/payment/googlepay/sale для проведения оплаты в одну стадию,
- /v2/payment/googlepay/auth для проведения оплаты в две стадии.
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,validation_url
— URL для проверки;domain_name
— доменное имя веб-сервиса мерчанта;display_name
— название проекта для отображения, должен содержать не более 64 символов;signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее).
payment
— объект, содержащий сведения о платеже:amount
— сумма платежа в дробных единицах валюты;,currency
— код валюты платежа в формате ISO-4217 alpha-3;,
customer
— объект, содержащий сведения о пользователе:id
— идентификатор пользователя, уникальный в рамках проекта;,ip_address
— IP-адрес пользователя, актуальный для инициируемого платежа.
etoken
— объект, содержащий сведения о токене с зашифрованными данными карты, полученный от сервиса Google Pay:token
— токен с зашифрованными данными карты.
- Могут потребоваться другие обязательные параметры в зависимости от типа токенизации карты, который используется при формировании запросов в сервис Google Pay. Информацию о том, какой тип токенизации используется при проведении оплат в рамках проекта, необходимо уточнять у специалистов технической поддержки ecommpay:
- Для использования типа токенизации
PAYMENT_GATEWAY
дополнительно необходимо указывать адрес электронной почты пользователя в параметреemail
объектаcustomer
. - Для типа токенизации
DIRECT
необходимо указывать в объектеetoken
:google_merchant_id
— идентификатор мерчанта в сервисе Google Pay;google_tokenization_type
— тип токенизацииDIRECT
.
- Для использования типа токенизации
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на оплату с применением метода Google Pay и типом токенизации PAYMENT_GATEWAY
должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), идентификатор и IP-адрес пользователя, токен от Google Pay и подпись.:
Корректный запрос на оплату с применением метода Google Pay и типа токенизации DIRECT
должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), идентификатор и IP-адрес пользователя, токен, идентификатор мерчанта в сервисе Google Pay, тип токенизации карты, а также подпись:
Формат запросов на продолжение проведения оплаты после 3‑D Secure аутентификации
При работе с запросами на продолжение оплаты после проведения 3‑D Secure аутентификации пользователя необходимо учитывать следующее:
- Для продолжения каждой оплаты после проведения 3‑D Secure аутентификации должен использоваться отдельный POST-запрос к конечной точке /v2/payment/card/3ds_result.
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
- Один из следующих параметров:
pares
— данные о результате аутентификации, полученные в уведомлении от платёжной платформы;,cres
— данные о результате аутентификации, полученные в уведомлении от сервера управления доступом.
Таким образом, корректный запрос на оплату с применением метода Google Pay должен содержать идентификаторы проекта и платежа, подпись и данные результата аутентификации.
Формат запросов на подтверждение оплаты в две стадии
При работе с запросами на подтверждение оплаты необходимо учитывать следующее:
- Для подтверждения каждой оплаты в две стадии должен использоваться отдельный POST-запрос к одной из следующих конечных точек:
- /v2/payment/googlepay/capture — в случае получения значения
etoken-google
в качестве служебного кода метода в оповещении о блокировке средств; - /v2/payment/card/capture — в случае получения значения
card
в качестве служебного кода метода в оповещении о блокировке средств;
- /v2/payment/googlepay/capture — в случае получения значения
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
payment
— объект, содержащий сведения о платеже:amount
— сумма платежа в дробных единицах валюты;,currency
— код валюты платежа в формате ISO-4217 alpha-3.
- Валюта и сумма платежа должны совпадать со значениями, переданными в запросе на авторизацию.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на оплату с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), а также подпись.
Формат запросов на отмену оплаты в две стадии
При работе с запросами на отмену оплаты необходимо учитывать следующее:
- Для отмены каждой оплаты в две стадии должен использоваться отдельный POST-запрос к одной из следующих конечных точек:
- /v2/payment/googlepay/cancel — в случае получения значения
etoken-google
в качестве служебного кода метода в оповещении о блокировке средств; - /v2/payment/card/cancel — в случае получения значения
card
в качестве служебного кода метода в оповещении о блокировке средств;
- /v2/payment/googlepay/cancel — в случае получения значения
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью). (подробнее).
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на оплату с применением метода Google Pay должен содержать идентификатор проекта, платежа и подпись.
Формат оповещений о результатах оплат
Для оповещений о результатах оплат с применением метода Google Pay используется типовой формат, описание которого представлено в разделе Оповещения.
К особенностям метода Google Pay можно отнести то, что в оповещениях для оплат, проводимых без использования приложения Google Pay и сопровождающихся аутентификацией 3‑D Secure, передаётся код индикатора ECI (подробнее) в параметре operation.eci
, а в качестве служебного кода метода в параметре payment.method
указывается значение card
. Вместе с тем, в оповещениях для оплат без аутентификации 3‑D Secure не передаётся код индикатора ECI, а в качестве служебного кода метода может указываться значение card
или etoken-google
.
К особенностям оповещений в случае с Google Pay можно отнести то, что в параметре token
объекта account
указывается значение токена карты. В случае указания кода метода etoken-google
этот токен можно использовать при запросах на выплаты, а когда указывается служебный код метода card
, токен можно использовать как для выплат, так и для оплат.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 688
была успешно проведена оплата в размере 1 000,00 USD
с банковской карты 431422******0056
без проведения аутентификации 3‑D Secure.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 688
была успешно проведена оплата в размере 1 000,00 USD
с банковской карты 431422******0056
с проведением аутентификации 3‑D Secure.
В следующем примере оповещение свидетельствует об отклонённой оплате, так как пользователь не прошел аутентификацию 3‑D Secure.
Дополнительные материалы
Для организации работы с оплатами через Gate также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как взаимодействовать с платёжной платформой через Gate.
- Работа с подписью — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Разовая оплата в одну стадию — о том, как проводить разовые оплаты через Gate.
- Информация об операциях — о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций.
Повторяемые оплаты через Payment Page
Общая информация
Платёжный метод Google Pay предоставляет возможность проводить повторяемые оплаты — регулярные оплаты со списаниями по запросу. Подробная информация представлена в разделе Повторяемая оплата со списаниями по запросам.
Через Payment Page доступна регистрация повторяемой оплаты, для этого со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, а также данные для регистрации повторяемой оплаты в объекте recurring
, на рабочий URL ecommpay и принять оповещение о результате. В оповещении о регистрации повторяемой оплаты вы получите её идентификатор, который нужно использовать для проведения или отмены регулярной оплаты через Gate. Подробная информация об этом представлена в разделе Повторяемые оплаты через Gate.
Информация о форматах запросов и оповещений, используемых для проведения оплат методом Google Pay через Payment Page, приведена далее в этом разделе; общая информация о работе с Payment Page API — в отдельной статье Организация взаимодействия.
Формат запросов
При формировании запросов на открытие платёжной формы для регистрации повторяемой оплаты с применением метода Google Pay необходимо учитывать следующее:
- Должен использоваться базовый минимум параметров, обязательный для любого платежа:
project_id
— идентификатор проекта, полученный от ecommpay при интеграции;payment_id
— идентификатор платежа, уникальный в рамках проекта;payment_currency
— код валюты платежа в формате ISO-4217 alpha-3;payment_amount
— сумма платежа в дробных единицах валюты;customer_id
— идентификатор пользователя в рамках проекта.
- Должен использоваться базовый минимум параметров:
project_id
,payment_id
,payment_currency
,payment_amount
,customer_id
. - Для регистрации повторяемой оплаты необходимо передать объект
recurring
, содержащий признак регистрации и необходимую информацию. Для регистрации регулярной оплаты в запросе необходимо передать информацию о периодичности, сумме, начале и конце совершения регулярной оплаты. Полный список параметров, которые можно передать в объектеrecurring
представлен в разделе Регистрация повторяемых оплат. - Для предварительного выбора метода Google Pay необходимо указывать код платёжного метода в параметре
force_payment_method
:google_pay_host
— для открытия Payment Page с предварительно выбранным платёжным методом Google Pay;card
— для открытия Payment Page с возможностью выбрать оплату с использованием платёжной карты, подключенной к сервису Google Pay. В данном случае оба платёжных метода доступны пользователю.
- Дополнительно могут использоваться любые другие параметры из числа доступных для работы с Payment Page (подробнее).
- После указания всех целевых параметров необходимо составлять подпись (подробнее).
Таким образом, корректный запрос на открытие платёжной формы с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), идентификатор пользователя, признак регистрации и информацию о повторяемой оплате, а также подпись.
Формат оповещений
Для оповещений о результатах регистрации повторяемой оплаты с применением метода Google Pay используется типовой формат, описание которого представлено в разделе Оповещения.
К особенностям метода Google Pay можно отнести то, что в оповещениях для повторяемых оплат, сопровождающихся аутентификацией 3‑D Secure, передаётся код индикатора ECI (подробнее) в параметре operation.eci
, а в качестве служебного кода метода в параметре payment.method
указывается значение card
. Вместе с тем, в оповещениях для оплат без аутентификации 3‑D Secure не передаётся код индикатора ECI, а в качестве служебного кода метода может указываться значение card
или etoken-google
.
К особенностям оповещений в случае с Google Pay можно отнести то, что в параметре token
объекта account
указывается значение токена карты. В случае указания кода метода etoken-google
этот токен можно использовать при запросах на выплаты, а когда указывается служебный код метода card
, то токен можно использовать как для выплат, так и для оплат.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 208
для пользователя была зарегистрирована повторяемая оплата.
Дополнительные материалы
Для организации работы с оплатами через Payment Page также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как организовать взаимодействие веб-сервиса с платёжной платформой через Payment Page.
- Работа с подписью к данным — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Информация о выполнении операций — о служебных кодах, которые используются в платёжной платформе, чтобы фиксировать информацию о выполнении операций.
Повторяемые оплаты через Gate
Общая информация
Платёжный метод Google Pay предоставляет возможность проводить повторяемые оплаты — регулярные оплаты со списаниями по запросу. Подробнее см. в Повторяемая оплата со списаниями по запросам.
Информация о форматах запросов и оповещений, используемых для проведения оплат методом Google Pay через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.
Регистрация повторяемой оплаты
Для регистрации повторяемых оплат со стороны веб-сервиса необходимо отправить запрос на оплату, содержащий требуемые параметры и подпись, а также признак регистрации повторяемой оплаты в параметре register
объекта recurring
со значением true
, на заданный URL ecommpay и принять оповещение с информацией о результате. В оповещении о регистрации повторяемой оплаты содержится идентификатор, который можно использовать для проведения или отмены регулярных оплат.
Подробнее о проведении оплаты через Gate с помощью метода Google Pay см. в разделе Разовые оплаты через Gate.
Формат запросов на регистрацию повторяемой оплаты
При работе с запросами на регистрацию повторяемой оплаты с применением метода Google Pay необходимо учитывать следующее:
- Каждый раз должен использоваться запрос, отправляемый методом POST к одной из следующих конечных точек: /v2/payment/googlepay/sale или /v2/payment/googlepay/auth.
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
customer
— объект, содержащий сведения о пользователе:id
— идентификатор пользователя, уникальный в рамках проекта;,ip_address
— IP-адрес пользователя, актуальный для инициируемого платежа;
payment
— объект, содержащий сведения о платеже:amount
— сумма платежа в дробных единицах валюты;,;currency
— код валюты платежа в формате ISO-4217 alpha-3;,
recurring
— объект, содержащий сведения о повторяемой оплате (условия проведения регулярного платежа хранятся на стороне мерчанта):register
— признак регистрации платежа как повторяемой оплаты,type
—тип повторяемой оплаты:R
(для регулярной оплаты),C
(для экспресс-оплаты), илиU
(для автооплаты), более подробная информация доступна в разделе Общая информация,scheduled_payment_id
—идентификатор платежа, в рамках которого следует выполнять списания; должен отличаться от идентификатора платежа, в рамках которого выполняется регистрация повторяемой оплаты, и быть уникальным в рамках проекта,start_date
— дата начала регулярной оплаты, в форматеДД-ММ-ГГГГ
(должна быть как минимум на один день позже, чем дата регистрации),amount
— сумма платежа,period
— период выполнения регулярной оплаты,interval
— интервал выполнения регулярной оплаты,time
— время выполнения регулярной оплаты в форматеhh:mm:ss (UTC0)
.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на регистрацию повторяемой оплаты с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), идентификатор и IP-адрес пользователя, признак регистрации и условия проведения списаний при регулярной оплате, а также подпись.
Формат запросов на проведение повторяемой оплаты
После того, как платёж зарегистрирован, чтобы инициировать повторяемую оплату, следует отправить в платёжную платформу запрос recurring
с полученным идентификатором платежа.
При работе с запросами на проведение повторяемой оплаты с применением метода Google Pay необходимо учитывать следующее:
- Каждый раз должен использоваться запрос, отправляемый методом POST к одной из следующих конечных точек:
- /v2/payment/googlepay/recurring — в случае получения значения
etoken-google
в качестве служебного кода метода в оповещении о зарегистрированной повторяемой оплате; - /v2/payment/card/recurring — в случае получения значения
card
в качестве служебного кода метода в оповещении о зарегистрированной повторяемой оплате;
- /v2/payment/googlepay/recurring — в случае получения значения
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
customer
— объект, содержащий сведения о пользователе:ip_address
— IP-адрес пользователя, актуальный для инициируемого платежа;
payment
— объект, содержащий сведения о платеже:amount
— сумма платежа в дробных единицах валюты;,;currency
— код валюты платежа в формате ISO-4217 alpha-3;,
recurring
— объект, содержащий сведения о повторяемой оплате:id
— идентификатор зарегистрированной повторяемой оплаты.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на проведение повторяемой оплаты с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), IP-адрес пользователя, идентификатор зарегистрированной регулярной оплаты, а также подпись.
Формат запросов на отмену проведения повторяемой оплаты
До момента истечения срока выполнения регулярной оплаты её можно отменить. Также для изменения условий выполнения регулярной оплаты её необходимо отменить и отправить запрос на создание новой.
При работе с запросами на отмену повторяемой оплаты с применением метода Google Pay необходимо учитывать следующее:
- Для отмены каждой оплаты должен использоваться запрос, отправляемый методом POST к одной из следующих конечных точек:
- /v2/payment/googlepay/recurring/cancel — в случае получения значения
etoken-google
в качестве служебного кода метода в оповещении о зарегистрированной повторяемой оплате; - /v2/payment/card/recurring/cancel — в случае получения значения
card
в качестве служебного кода метода в оповещении о зарегистрированной повторяемой оплате;
- /v2/payment/googlepay/recurring/cancel — в случае получения значения
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
recurring
— объект, содержащий сведения о повторяемой оплате:id
— идентификатор зарегистрированной повторяемой оплаты.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на отмену проведения регулярной оплаты с применением метода Google Pay должен содержать идентификаторы проекта, платежа и зарегистрированной повторяемой оплаты, а также подпись.
Формат оповещений
Для оповещений о результатах действий с повторяемыми оплатами с применением метода Google Pay используется стандартный формат, описание которого представлено в разделе Оповещения.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 208
для пользователя была зарегистрирована повторяемая оплата.
В следующем примере оповещение свидетельствует о том, что проведение регулярной оплаты отменено.
В следующем примере оповещение свидетельствует об отклонённом проведении регулярной оплаты.
Дополнительные материалы
Для организации работы с оплатами через Gate также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как взаимодействовать с платёжной платформой через Gate.
- Работа с подписью — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Информация об операциях — о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций.
Возвраты через Gate
Общая информация
Для выполнения возврата через Gate с использованием метода Google Pay со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате. Полная схема выполнения возврата выглядит следующим образом.
Информация о форматах запросов и оповещений, используемых для выполнения возвратов методом Google Pay через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.
Формат запросов
При работе с запросами на возврат с применением метода Google Pay необходимо учитывать следующее:
- Для выполнения каждого возврата должен использоваться запрос, отправляемый методом POST к одной из следующих конечных точек:
- /v2/payment/googlepay/refund — в случае получения значения
etoken-google
в качестве служебного кода метода в оповещении о проведённой оплате; - /v2/payment/card/refund — в случае получения значения
card
в качестве служебного кода метода в оповещении о проведённой оплате;
- /v2/payment/googlepay/refund — в случае получения значения
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, для которого необходимо выполнить возврат;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее)),
payment
— объект, содержащий сведения о возврате:description
— комментарий к возврату или его описание;,amount
— сумма возврата в дробных единицах валюты (является обязательной при частичном возврате);,currency
— код валюты возврата в формате ISO-4217 alpha-3 (является обязательным при частичном возврате);,
customer
— объект, содержащий сведения о пользователе:ip_address
— IP-адрес пользователя, актуальный для инициируемого возврата.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на возврат с применением метода Google Pay должен содержать идентификаторы проекта и платежа, описание возврата, IP-адрес пользователя, подпись, а также, при необходимости, код валюты и сумму возврата.
Формат оповещений
Для оповещений о результатах возврата с применением метода Google Pay используется типовой формат, описание которого представлено в разделе Оповещения.
При этом в качестве служебного кода метода в параметре payment.method
может указываться etoken-google
или card
(в зависимости от оплаты, для которой выполняется возврат).
В следующем примере оповещение свидетельствует о том, что в рамках проекта 208
для пользователя был выполнен возврат в размере 30,00 USD
на счёт карты 541333******0019
.
В следующем примере оповещение свидетельствует об отклонённом возврате.
Дополнительные материалы
Для организации работы с возвратами через Gate также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как взаимодействовать с платёжной платформой через Gate.
- Работа с подписью — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Возвраты средств после оплат — о том, как выполнять возвраты через Gate.
- Информация об операциях — о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций.
Выплаты через Gate
Общая информация
Для проведения выплаты через Gate с использованием метода Google Pay со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате. Полная схема проведения выплаты выглядит следующим образом.
Информация о форматах запросов и оповещений, используемых для проведения выплат методом Google Pay через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.
Формат запросов
При работе с запросами на выплаты с применением метода Google Pay необходимо учитывать следующее:
- Для инициирования каждой выплаты должен использоваться отдельный POST-запрос к конечной точке /v2/payment/card/payout/token.
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
payment
— объект, содержащий сведения о платеже:amount
— сумма выплаты в дробных единицах валюты;,currency
— код валюты платежа в формате ISO-4217 alpha-3;,
customer
— объект, содержащий сведения о пользователе:id
— идентификатор пользователя, уникальный в рамках проекта;,ip_address
— IP-адрес пользователя, актуальный для инициируемой выплаты;,first_name
— имя пользователя;,middle_name
— отчество или среднее имя пользователя;,last_name
— фамилия пользователя;,
card
— объект, содержащий сведения о платёжной карте пользователя:card_holder
— полное имя держателя карты;,
token
— токен карты, полученный от ecommpay в параметреtoken
оповещения о проведённой оплате.
- В случае проведения выплаты на карту платёжной системы Visa, выпущенную в Канаде, в запросе необходимо передавать объект
recipient
, содержащий сведения о местонахождении получателя выплаты: - В случае проведения выплаты в рамках программы Money Transfer платёжной системы Visa на карту, выпущенную в Бразилии или Катаре, в запросе необходимо передавать номер телефона отправителя в параметре
phone
объектаsender
. - В случае проведения выплаты в рамках программ сервиса MoneySend платёжной системы Mastercard, в которой отправителем является физическое лицо, в запросе необходимо передавать информацию об имени и фамилии получателя в параметрах
first_name
иlast_name
объектаrecipient
, а также информацию об отправителе выплаты в объектеsender
:- номер платёжного инструмента отправителя —
pan
для карты илиwallet_id
для электронного кошелька; first_name
— имя отправителя;last_name
— фамилия отправителя;address
— адрес отправителя;city
— город отправителя;zip
— почтовый индекс отправителя;country
— код страны отправителя в формате ISO 3166-1 alpha-2;- если код страны соответствует CA или US, дополнительно следует передать параметр
state
— штат, провинция или другой регион отправителя выплаты.
- номер платёжного инструмента отправителя —
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на выплату с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (его идентификатор, сумму и код валюты), информацию о пользователе, токен, полное имя держателя карты и подпись.
Формат оповещений
Для оповещений о результатах выплат с применением метода Google Pay используется типовой формат, описание которого представлено в разделе Оповещения.
В следующем примере оповещение свидетельствует о том, что в рамках проекта 123
была проведена выплата в размере 1,00 EUR
.
В следующем примере оповещение свидетельствует об отклонённой выплате.
Дополнительные материалы
Для организации работы с выплатами через Gate также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как взаимодействовать с платёжной платформой через Gate.
- Работа с подписью — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Выплаты — о том, как проводить выплаты через Gate.
- Информация об операциях — о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций.
Выплаты через Dashboard
При использовании интерфейса Dashboard можно проводить выплаты методом Google Pay с помощью инструментов пакетной отправки запросов. При этом в каждый пакет можно включать один или множество запросов.
Для каждой группы выплат в таких случаях необходимо подготовить и загрузить файл с информацией обо всех целевых выплатах, отправить пакет запросов и убедиться в проведении выплат.
При этом должен использоваться файл формата CSV, структура которого соответствует требованиям, представленным в разделе Сведения о массовых платежах, а параметры выплат — должны соответствовать требованиям, представленным в разделе Выплаты через Gate этой статьи (за исключением пункта о подписи).
Более подробная информация о проведении выплат через Dashboard представлена в отдельной статье.
Проверка действительности карты
Общая информация
Для проверки действительности карты через Gate с использованием Google Pay метода со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL ecommpay и принять оповещение о результате. Схема проведения проверки действительности карты через сервис Google Pay аналогична стандартной проверке, описание которой представлено в разделе Проверка платёжных инструментов.
Формат запросов на проверку действительности карты
При работе с запросами на проверку действительности карты через сервис Google Pay необходимо учитывать следующее:
- Для проверки действительности карты должен использоваться отдельный POST-запрос к конечной точке /v2/payment/googlepay/account_verification.
- В каждом запросе должны использоваться следующие объекты и параметры:
general
— объект, содержащий основные идентификационные сведения запроса:project_id
— идентификатор проекта, полученный от ecommpay при интеграции;,payment_id
— идентификатор платежа, уникальный в рамках проекта;,signature
— подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью); (подробнее),
payment
— объект, содержащий сведения о платеже:amount
— сумма платежа в дробных единицах валюты;,;currency
— код валюты платежа в формате ISO-4217 alpha-3;,
customer
— объект, содержащий сведения о пользователе:ip_address
— IP-адрес пользователя, актуальный для инициируемого платежа;
etoken
— сведения о токене от Google Pay:token
— токен, полученный от Google Pay после идентификации пользователя.
- Сумма платежа должна быть нулевой.
- Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.
Таким образом, корректный запрос на оплату с применением метода Google Pay должен содержать идентификатор проекта, базовые сведения о платеже (идентификатор, сумму и код валюты), IP-адрес пользователя и токен от Google Pay, а также подпись.
Формат оповещений
Для оповещений о результатах проведения проверки действительности карты используется типовой формат, описание которого представлено в разделе Проверка платёжных инструментов.
Дополнительные материалы
Для организации работы с оплатами через Gate также могут быть полезны следующие материалы:
- Организация взаимодействия — о том, как взаимодействовать с платёжной платформой через Gate.
- Работа с подписью — о порядке создания и проверки подписи в программных запросах и оповещениях при взаимодействии с платёжной платформой.
- Модель проведения платежей — о типах, схемах проведения и возможных статусах поддерживаемых платежей и операций.
- Разовая оплата в одну стадию — о том, как проводить разовые оплаты через Gate.
- Информация об операциях — о служебных кодах, используемых в платёжной платформе для фиксации информации о выполнении операций.
Тестирование
Общая информация
Для метода Google Pay доступно тестирование оплат в одну и две стадии через Payment Page и Gate, а тестирование проверки действительности карты через Gate. Тестирование может выполняться в рамках тестового проекта, и для подключения и отключения этой функциональности следует обращаться к специалистам технической поддержки ecommpay.
При проведении тестовых платежей следует учитывать, что в запросах должен указываться идентификатор тестового проекта, а интерфейсы эмулятора платёжных форм Payment Page и страницы аутентификации 3‑D Secure могут отличаться от рабочих. Вместе с тем для проведения тестовых платежей необходимо использовать действительные платёжные карты, предварительно зарегистрированные в сервисе Google Pay. Это никак не влияет на проведение реальных платежей с использованием этих карт, но позволяет выполнять полноценное тестирование.
Для тестирования оплат через Gate необходимо также подготовить веб-сервис к работе с сервисом Google (подробнее — в разделе Разовые оплаты через Gate).
Статусы тестовых платежей и операций
При тестировании оплат в одну и две стадии их итоговые статусы определяются исходя из сумм, указанных в запросах:
success
— при указании суммы1000
;decline
— при указании суммы2000
,5000
или10001
.
При тестировании проверки действительности карты статус этой проверки определяется исходя из сумм, указанных в запросах:
success
— при указании суммы0
;decline
— при указании любой другой суммы.
Оплата в одну стадию через Payment Page
Для проведения тестовой оплаты в одну стадию через Payment Page необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на открытие Payment Page.
- Если в запросе не был указан код предварительного выбора метода
card
илиgoogle_pay_host
— выбрать оплату методом Google Pay на странице эмулятора. - При отображении страницы аутентификации эмулятора пройти аутентификацию 3‑D Secure 2.
- Принять итоговое оповещение с информацией о результате оплаты.
Более подробная информация о проведении оплат с использованием метода Google Pay через Payment Page представлена в разделе Разовые оплаты через Payment Page этой статьи.
Оплата в одну стадию через Gate
Для проведения тестовой оплаты через Gate необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на оплату.
- При получении оповещения с данными для перенаправления на страницу аутентификации 3‑D Secure 2 эмулятора:
- Выполнить перенаправление и пройти аутентификацию.
- Отправить запрос на продолжение проведения оплаты. В этом запросе необходимо использовать параметр cres со следующим значением:
ewogICAiYWNzUmVmZXJlbmNlTnVtYmVyIiA6ICJBQ1NFbXUyIiwKICAgImFjc1RyYW5zSUQiIDogIjAwMDAwMDAwLTAwMDUtNWE1YS04MDAwLTAxNmRiNjMzNzZlYiIsCiAgICJtZXNzYWdlVHlwZSIgOiAiQ1JlcyIsCiAgICJtZXNzYWdlVmVyc2lvbiIgOiAiMi4xLjAiLAogICAidGhyZWVEU1NlcnZlclRyYW5zSUQiIDogIjZmMmM3OGFkLTFjOWMtNTI2ZC04MDAwLTAwMDAwMDAwMTA2YiIsCiAgICJ0cmFuc1N0YXR1cyIgOiAiWSIKfQ
- Принять итоговое оповещение с информацией о результате оплаты.
Более подробная информация о проведении оплат с использованием метода Google Pay через Gate представлена в разделе Разовые оплаты через Gate этой статьи.
Оплата в две стадии с блокировкой средств через Payment Page и подтверждением или отменой через Gate
Для проведения тестовой оплаты в две стадии с блокировкой через Payment Page и подтверждением или отменой через Gate необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на открытие Payment Page.
- Если в запросе не был указан код предварительного выбора метода
card
илиgoogle_pay_host
— выбрать оплату методом Google Pay на странице эмулятора. - При отображении страницы аутентификации эмулятора пройти аутентификацию 3‑D Secure 2.
- Принять оповещение с информацией о результате блокировки средств.
- Отправить запрос на подтверждение или отмену оплаты.
- Принять итоговое оповещение с информацией о результате.
Более подробная информация о проведении оплат с использованием метода Google Pay через Payment Page и Gate представлена в разделах Разовые оплаты через Payment Page и Разовые оплаты через Gate этой статьи.
Оплата в две стадии с блокировкой средств и подтверждением или отменой через Gate
Для проведения тестовой оплаты в две стадии с блокировкой и подтверждением или отменой через Gate необходимо:
- Отправить в платёжную платформу корректный тестовый запрос на оплату.
- При получении оповещения с данными для перенаправления на страницу аутентификации 3‑D Secure 2 эмулятора:
- Выполнить перенаправление и пройти аутентификацию.
- Отправить запрос на продолжение проведения оплаты. В этом запросе необходимо использовать параметр cres со следующим значением:
ewogICAiYWNzUmVmZXJlbmNlTnVtYmVyIiA6ICJBQ1NFbXUyIiwKICAgImFjc1RyYW5zSUQiIDogIjAwMDAwMDAwLTAwMDUtNWE1YS04MDAwLTAxNmRiNjMzNzZlYiIsCiAgICJtZXNzYWdlVHlwZSIgOiAiQ1JlcyIsCiAgICJtZXNzYWdlVmVyc2lvbiIgOiAiMi4xLjAiLAogICAidGhyZWVEU1NlcnZlclRyYW5zSUQiIDogIjZmMmM3OGFkLTFjOWMtNTI2ZC04MDAwLTAwMDAwMDAwMTA2YiIsCiAgICJ0cmFuc1N0YXR1cyIgOiAiWSIKfQ
- Принять оповещение с информацией о результате блокировки средств.
- Отправить запрос на подтверждение или отмену оплаты.
- Принять итоговое оповещение с информацией о результате.
Более подробная информация о проведении оплат с использованием метода Google Pay через Gate представлена в разделе Разовые оплаты через Gate этой статьи.
Проверка действительности карты через Gate
Для выполнения тестовой проверки действительности через Gate необходимо отправить в платёжную платформу корректный тестовый запрос на проверку действительности и принять итоговое оповещение с информацией о результате. Более подробная информация о выполнении проверок действительности с использованием метода Google Pay представлена в разделе Проверка действительности карты этой статьи.
Анализ результатов проведения платежей
Для анализа информации о платежах и операциях, как в отдельности по методу Google Pay, так и в совокупности с другими методами, можно использовать:
- инструментарий интерфейса Dashboard, с различными реестрами и аналитическими панелями;,
- отчёты в формате CSV, выгружаемые (как разово, так и периодически) через раздел Отчёты интерфейса Dashboard;,
- данные в формате JSON, получаемые по программным запросам через интерфейс Data API.
С вопросами по анализу информации можно обращаться к разделам документации (Dashboard и Использование Data API) и специалистам ecommpay.