Работа с „сетевыми токенами“ карт платёжных систем 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 после анализа и оценки рисков);cvv— код проверки подлинности карты (обязательно во всех случаях, кроме проведения автооплат и регулярных оплат).
- В составе объекта
token_dataдолжны передаваться следующие параметры:token_type— указатель типа токена со значениемnetwork_token(обязательно для каждого платежа);cryptogram— код проверки подлинности токена, такой как Token Authentication Verification Value (TAVV), полученный в сервисе сетевой токенизации (обязательно для платежей с регистрацией повторяемых оплат и необязательно для других платежей);eci— индикатор ECI, соответствующий используемому токену и полученный в сервисе сетевой токенизации (обязательно для платежей с регистрацией повторяемых оплат и необязательно для других платежей);trid— идентификатор мерчанта, присвоенный при его регистрации в сервисе сетевой токенизации (необязательно).
- Должен передаваться параметр
stored_card_typeс одним из следующих значений:1для сохранения платёжных данных или для регистрации экспресс-оплаты,2для проведения платежа с использованием сохранённых платёжных данных или для проведения экспресс-оплаты,3для регистрации автооплаты,4для проведения автооплаты,5для регистрации регулярной оплаты,6для проведения регулярной оплаты.
Информация о работе с повторяемыми оплатами представлена в статье Повторяемые оплаты.
- В случае проведения повторяемой оплаты (
stored_card_typeсо значениями2,4или6) с использованием карты, выпущенной в Европейской экономической зоне, должен передаваться параметрscheme_id— идентификатор операции, в рамках которой была зарегистрирована эта повторяемая оплата, на стороне международной платёжной системы (Mastercard или Visa). - Дополнительно могут использоваться любые другие параметры из указанных в спецификации используемой конечной точки API.
Дополнительные материалы
При работе с сетевыми токенами могут быть полезны следующие материалы:
- Разовые оплаты — статья о порядке проведения разовых одностадийных и двухстадийных оплат через Gate.
- Повторяемые оплаты — статья о порядке проведения повторяемых оплат через Gate.
- Использование токенов — статья о работе с внутренними токенами, формируемыми непосредственно в платёжной платформе.
- Перенос информации о повторяемых оплатах и токенах платёжных карт — статья о порядке переноса информации о повторяемых оплатах и локальных токенах от других эквайеров.