Работа с „сетевыми токенами“ карт платёжных систем Mastercard и Visa
статья о возможности сохранять и использовать при работе через Gate платёжные данные пользователей с применением сетевых токенов карт платёжных систем Mastercard и Visa
Общая информация
Чтобы повысить удобство работы с данными платёжных карт и безопасность проведения платежей, отдельные платёжные системы обеспечивают возможности применения так называемых „сетевых токенов“. Каждый из таких токенов может быть получен только для карты соответствующей („родительской“) платёжной системы и только через специализированный сервис этой платёжной системы, но в дальнейшем может применяться при работе с любыми эквайерами и провайдерами, поддерживающими работу с токенами этой платёжной системы.
В платёжной платформе Ecommpay поддерживается проведение отдельных типов платежей с использованием „сетевых токенов“токенов, сформированных в рамках сервисов сетевой токенизации Mastercard Secure Card on File (SCOF) и Visa Token Service (VTS) от платёжных систем Mastercard и Visa. Каждый из такихТехнически каждый из сетевых токенов этих платёжных систем представляет собой последовательность из 16 символов, которая может использоваться в запросах вместо номера карты. При этом в случаях с изменениями сведений о карте, ассоциированной с сетевым токеном (например, при перевыпуске карты), такой токен не теряет действительности, поскольку его атрибуты автоматически обновляются в соответствующем сервисе.
В рамках платёжной платформы Ecommpay использование сетевых токенов может быть актуальным в тех случаях, когда эти токены уже получены в сторонних сервисах и используются на стороне мерчанта. В остальных случаях можно использовать возможности по работе с токенами через Payment Page (подробнее) и Gate (подробнее), а также возможности переноса информации о локальных токенах от других эквайеров (подробнее).
С вопросами, касающимися условий использования сетевых токенов и порядка подключения возможности работы с ними, можно обращаться к курирующему менеджеру Ecommpay, с техническими вопросами, касающимися аспектов применения сетевых токенов — к настоящей документации и специалистам технической поддержки Ecommpay.
Особенности и ограничения
При проведении платежей с использованием сетевых токенов необходимо учитывать следующие особенности и ограничения.
- Возможность применения сетевых токенов (для всех поддерживаемых платёжных систем) должна быть подключена для используемого проекта.
В случае, если эта возможность не подключена для проекта, платежи с указанием сетевых токенов отклоняются с кодом ошибки 318.
- Сетевые токены могут использоваться в ограниченном числе случаев, включая проведение разовых оплат в одну и две стадии, регистрацию и проведение повторяемых оплат с хранением платёжных данных на стороне веб-сервиса (подробнее) и проверку действительности карт.
В других ситуациях, в частности при проведении оплат по платёжным ссылкам, при проведении повторяемых оплат с хранением данных в платформе или при проведении выплат, допустимо применять только те токены, которые сформированы непосредственно в платёжной платформе Ecommpay (подробнее).
- Управление сетевыми токенами (в том числе их формирование, обновление и получение необходимых для их использования данных) осуществляется через соответствующие специализированные сервисы.
Для получения информации о порядке работы с такими сервисами можно обращаться к документации и специалистам этих сервисов.
- Ответственность за корректное применение сетевых токенов и их атрибутов возлагается на мерчанта.
При возникновении вопросов, связанных с ошибочным применением сетевых токенов, можно обращаться к курирующему менеджеру Ecommpay.
Формат запросов
При формировании запросов на проведение платежей с использованием сетевых токенов необходимо учитывать следующее:
- Для инициирования каждого такого платежа должен использоваться отдельный POST-запрос к одной из следующих конечных точек:
- для разовых одностадийных и для повторяемых оплат — /v2/payment/card/sale;
- для разовых двухстадийных оплат — /v2/payment/card/auth;
- для проверки действительности карты — /v2/payment/card/account_verification.
- В составе объекта
cardдолжны передаваться следующие сведения о токене и карте:pan— токен, сформированный в специализированном сервисе сетевой токенизации. Обязателен во всех случаях.year— порядковый номер года, в котором заканчивается срок действия токена — в четырёхзначном форматеYYYYпо григорианскому календарю. Обязателен во всех случаях.month— порядковый номер месяца, в котором заканчивается срок действия токена — в виде числа, без ведущего нуля. Обязателен во всех случаях.card_holder— имя держателя карты — в соответствии с написанием на карте. Обязательно во всех случаях, кроме допустимых исключений. Может не указываться только по согласованию с курирующим менеджером Ecommpay после анализа и оценки рисков для конкретных проектов и соответствующей настройки свойств этих проектов специалистами технической поддержки Ecommpay.cvv— код проверки подлинности карты. Обязателен во всех случаях, кроме допустимых исключений. Может не указываться, если выполняется одно из следующих условий:- запрос относится к ранее зарегистрированной автооплате или регулярной оплате с хранением данных на стороне мерчанта;
- в запросе указан аутентифицированный токен (при формировании токена в стороннем сервисе была выполнена аутентификации пользователя);
- перед отправкой запроса была выполнена аутентификация 3‑D Secure без участия Ecommpay и информация о результате этой аутентификации указана в параметрах объекта
authentication_data; - для целевого платежа возможна аутентификация 3‑D Secure через платформу Ecommpay (с учётом специфики проекта и доступности технических средств).
В остальных случаях
cvvявляется обязательным, и его отсутствие в запросе ведёт к отклонению платежа.stored_card_type— указатель способа применения данных карты (или токена). Обязателен во всех случаях и может принимать одно из следующих значений:1для сохранения платёжных данных или для регистрации экспресс-оплаты;2для проведения платежа с использованием сохранённых платёжных данных или для проведения экспресс-оплаты;3для регистрации автооплаты;4для проведения автооплаты;5для регистрации регулярной оплаты;6для проведения регулярной оплаты.
Информация о работе с повторяемыми оплатами представлена в статье Повторяемые оплаты.
- В составе объекта
token_dataво всех случаях должен передаваться параметрtoken_type— указатель типа токена со значениемnetwork_token. - Для регистрации повторяемой оплаты в составе объекта
token_dataдолжны передаваться следующие параметры:cryptogram— код проверки подлинности токена, такой как Token Authentication Verification Value (TAVV), полученный в сервисе сетевой токенизации;eci— индикатор ECI, соответствующий используемому токену и полученный в сервисе сетевой токенизации.
В составе объекта
token_dataдополнительно рекомендуется передавать параметрtrid— идентификатор мерчанта, присвоенный при его регистрации в сервисе сетевой токенизации. - В случае проведения повторяемой оплаты (с указанием для параметра
stored_card_typeзначения2,4или6) с использованием карты, выпущенной в Европейской экономической зоне, в объектеcardдолжен передаваться параметрscheme_id— идентификатор операции, в рамках которой была зарегистрирована эта повторяемая оплата, на стороне международной платёжной системы (Mastercard или Visa). - Дополнительно могут использоваться любые другие параметры из указанных в спецификации используемой конечной точки API.
Дополнительные материалы
При работе с сетевыми токенами могут быть полезны следующие материалы:
- Разовые оплаты — статья о порядке проведения разовых одностадийных и двухстадийных оплат через Gate.
- Повторяемые оплаты — статья о порядке проведения повторяемых оплат через Gate.
- Использование токенов — статья о работе с внутренними токенами, формируемыми непосредственно в платёжной платформе.
- Перенос информации о повторяемых оплатах и токенах платёжных карт — статья о порядке переноса информации о повторяемых оплатах и локальных токенах от других эквайеров.