Предварительный выбор платёжных методов

Общая информация

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

Для работы с такими ситуациями вВ платёжной платформе ecommpay предусмотрена возможность открытия Payment Page с учётом предварительно выбранного (пользователем или мерчантом) метода, минуя выбор метода в платёжной форме. Выбранный метод в таких случаях указывается в запросе на открытие Payment Page, и для подключения этой возможности не требуется никаких дополнительных действий.

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

  • Отображение сохранённых данных определённой платёжной системы. Для оплаты с прямым использованием карт можно ограничивать выбор карт, данные которых были сохранены пользователем. В таком случае в запросе на открытие Payment Page указывается идентификатор предпочтительной платёжной системы (например, Mastercard или Visa), в результате чего первой пользователю отображается страница выбора платёжной карты с данными карт указанной платёжной системы. Если таких данных нет или среди представленных карт нет подходящих, то пользователь может указать данные другой карты, в том числе другой платёжной системы.


  • Предварительный выбор банка. Для некоторых методов интернет-банкинга, например Indonesian Online Banking, предварительно можно указывать конкретный банк, поддерживающий оплату с использованием этого метода. В таком случае перенаправление пользователя осуществляется напрямую на сайт банка, минуя страницы с выбором платёжного метода и выбором банка. Информация о таких возможностях, специфичных для отдельных методов, представлена в описании этих методов в разделе Методы.
  • Предварительный выбор группы методов. Некоторые методы, например Open Banking in Germany, входят в группы, идентификаторы которых можно указывать при отправке запроса на открытие Payment Page. В таком случае пользователю отображаются кнопки выбора только тех методов, которые входят в указанную группу и доступны в рамках используемого проекта.

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

Особенности

При работе с предварительным выбором платёжных методов необходимо учитывать следующие особенности:

  • в качестве предварительно выбранного может указываться один из методов, доступных в рамках используемого проекта, иначе запрос отклоняется;
  • пользователю не предоставляется возможность выбрать другой метод, кроме указанного при вызове Payment Page, в том числе и при выполнении всех повторных попыток в рамках платежа;
  • при одновременном указании в запросе метода и токена платёжных данных платёж проводится с использованием токена, а информация о платёжном методе игнорируется.

Формат запросов

Для указания платёжного метода в запросе на открытие Payment Page необходимо передавать код этого метода в параметре force_payment_method, для указания группы методов — код этой группы в параметре force_payment_group. Коды поддерживаемых методов и групп представлены в отдельном справочнике.

В следующем примере для проведения оплаты указан метод Alipay.

{
   "project_id": 42,
   "payment_id": "456789",
   "payment_currency": "USD",
   "payment_amount": 131970,
   "customer_id": "customer_12",
   "force_payment_method": "alipay",  // код платёжного метода
   "signature": "TSzdE5rJZaA9TYAKoGpfXriFf82MxF..."
 }
Рис. 3. Пример данных из запроса с указанием метода Alipay
{
   "project_id": 42,
   "payment_id": "456789",
   "payment_currency": "USD",
   "payment_amount": 131970,
   "customer_id": "customer_12",
   "force_payment_method": "alipay",  // код платёжного метода
   "signature": "TSzdE5rJZaA9TYAKoGpfXriFf82MxF..."
 }

Чтобы указать предпочтительную платёжную систему для оплаты с прямым использованием карты, в запросе на открытие Payment Page необходимо указать код платёжного метода card в параметре force_payment_method и идентификатор платёжной системы в параметре force_payment_method_subtype. Используемые идентификаторы платёжных систем представлены в отдельном справочнике.

В следующем примере в качестве предпочтительной указана платёжная система Mastercard.

{
   "project_id": 43,
   "payment_id": "456790",
   "payment_currency": "USD",
   "payment_amount": 131970,
   "customer_id": "customer_12", 
   "force_payment_method": "card",  // код платёжного метода
   "force_payment_method_subtype": "mastercard",   // идентификатор платёжной системы
   "signature": "TSzdE5rJZaA9TYAKoGpfXriFf82MxF..."
 }
Рис. 4. Пример данных из запроса с указанием платёжной системы Mastercard
{
   "project_id": 43,
   "payment_id": "456790",
   "payment_currency": "USD",
   "payment_amount": 131970,
   "customer_id": "customer_12", 
   "force_payment_method": "card",  // код платёжного метода
   "force_payment_method_subtype": "mastercard",   // идентификатор платёжной системы
   "signature": "TSzdE5rJZaA9TYAKoGpfXriFf82MxF..."
 }

Дополнительные материалы

При работе с предварительным выбором платёжных методов могут быть полезны следующие материалы: