Аутентификация 3‑D Secure на стороне мерчанта

Общие сведения

Прохождение аутентификации 3‑D Secure пользователем может осуществляться как на стороне платёжной платформы ecommpay, так и на стороне мерчанта. В случае если аутентификация проходит на стороне мерчанта для совершения оплаты в платёжную платформу необходимо передать результат прохождения проверки и повторная проверка на стороне платёжной платформы происходить не будет.

Чтобы подключить эту возможность, необходимо обратиться к специалистам технической поддержки (support@ecommpay.com).

Передача результата аутентификации 3‑D Secure

После подключения возможности в запросах к платёжной платформе ecommpay можно передавать информацию о результате прохождения аутентификации 3‑D Secure. Такая информация передаётся в объекте authentication_data в запросе на проведение разовой оплаты, в том числе по токену или по сохраненным данным карты, или на проверку действительности карты. Данные передаются в следующих параметрах:

Параметр Тип Обязательность Описание
cavv string Обязателен, если authentication_status=Y или A Значение проверки подлинности держателя карты в Base64-кодировке 20-байтового значения
ds_operation_id string Обязателен, если threeds_version=3ds_2 Уникальный идентификатор операции, зарегистрированный сервером каталогов (Directory Server)
eci string Обязателен, если authentication_status=Y или A Индикатор, отображающий результат 3‑D Secure аутентификации пользователя, подробнее в разделе Индикаторы ECI
threeds_version string Необязателен Индикатор выполнения аутентификации 3‑D Secure:
  • 3ds_2
  • non_3ds
threeds_full_version string Необязателен Номер версии протокола 3‑D Secure, например 2.3.1
xid string Обязателен Идентификатор транзакции, полученный в результате обработки аутентификации, в Base64-кодировке 20-байтового значения
authentication_status string Обязателен, кроме случаев если enrollement_status=N или U

Статус аутентификации держателя карты. Возможные значения:

  • Y — держатель карты успешно прошел аутентификацию у эмитента карты,
  • A — была предпринята попытка аутентификации держателя карты,
  • U — эмитент карты был недоступен во время аутентификации.
authentication_status_reason_code string Необязателен Код причины, по которой аутентификации присвоен соответствующий статус
authentication_flow string Необязателен Указатель варианта прохождения аутентификации пользователем. Возможные значения:
  • Frictionless,
  • Challenge
Рис. 1. Пример запроса на оплату с прохождением проверки 3‑D Secure на стороне мерчанта
{
   "general":{
      "project_id":200,
      "payment_id":"id_15514400636",
      "signature":"PJkV8ej\/UG0Di8hTng6JvC7vQsaC6tajQ...=="
   },
   "card":{
      "pan":"some_string",
      "year":2025,
      "month":12,
      "card_holder":"JOHN JOHNSON",
      "cvv":"some_string"
   },
   "customer":{
      "id":"123",
      "ip_address":"217.1.1.0"
   },
   "payment":{
      "amount":1000,
      "currency":"EUR"
   },
   "authentication_data":{
      "cavv":"kEMQyiH/ASySYhP1hAErbWFO+mih",
      "ds_operation_id":"f780a79f-a5e1-44d8-bfa3-5f89432fdb79",
      "eci":"06",
      "threeds_version":"3ds_2",
      "xid":"MDAwMDAwNzYxODEwMDAwMDE3MDE=",
      "authentication_status":"A",
      "authentication_flow":"Frictionless",
      "threeds_full_version":"2.3.1",
      "authentication_status_reason_code":"01"
   }
}

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

Для организации работы с оплатами через Gate также могут быть полезны следующие материалы: