Аутентификация 3‑D Secure

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

Аутентификация пользователя с использованием протокола 3‑D Secure (Three-Domain Secure) предназначена для безопасного проведения интернет-оплат с использованием платёжных карт. Такая аутентификация, как правило, обязательна для проведения классических карточных оплат и может выполняться по-разному: как с необходимостью пользователя выполнить определённые действия для подтверждения своей личности, так и без такой необходимости.

Notice: В настоящее время как со стороны платёжных систем American Express, Mastercard и Visa, так и со стороны ecommpay поддерживается вторая версия протокола — 3‑D Secure 2. И представленная в этой статье информация относится к данной версии протокола.

Аутентификация 3‑D Secure может выполняться в следующих вариантах:

  • Аутентификация с подтверждением пользователем своей личности (challenge flow). В этом случае подтверждение личности пользователя выполняется, например, с использованием одноразового кода или биометрических данных, если такая возможность поддерживается эмитентом.
  • Аутентификация без участия пользователя (frictionless flow). В этом случае личность пользователя подтверждается исходя из информации, которой располагает эмитент.


Со стороны мерчанта выбирать варианты аутентификации нельзя — можно лишь указывать предпочтения по такому выбору для конкретных платежей, но итоговое решение каждый раз принимается на стороне эмитента. Также, помимо указания предпочтений, в запросах на проведение платежей можно передавать ряд других необязательных параметров, применение которых может повышать вероятность выбора варианта аутентификации frictionless flow и, как следствие, способствовать повышению проходимости и улучшению пользовательского опыта. Информация о таких параметрах представлена далее.

Особенности

Область применения

Выполнение аутентификации 3‑D Secure, как правило, обязательно для платежей с прямым использованием платёжных карт. Это связано с требованиями второй директивы о платёжных услугах (Payment Services Directive 2, PSD2), включающими в себя необходимость выполнения строгой аутентификации пользователя (Strong Customer Authentication, SCA) при проведении таких платежей.

К платежам, на которые не распространяются требования PSD2 к строгой аутентификации, относятся:

  • Оплаты с использованием платёжных карт, выпущенных за пределами Европейской экономической зоны.
  • Оплаты с использованием анонимных предоплаченных платёжных карт, например с использованием подарочной карты или виртуальной карты с предоплаченной стоимостью.
  • Оплаты категории Mail Order/Telephone Order (MO/TO).
  • Оплаты, инициируемые мерчантом (Merchant-initiated transactions, MIT), к которым в платёжной платформе ecommpay относятся регулярные оплаты и автооплаты (с типом платежа recurring), а также операции по изменению суммы предварительной блокировки (с типом операции incremental).
  • Оплаты с использованием большинства альтернативных платёжных методов.

В платёжной платформе ecommpay поддерживается определение таких платежей, и аутентификация для них не выполняется.

Допустимые исключения

Среди тех платежей, на которые распространяются базовые требования к строгой аутентификации, директива PSD2 допускает наличие исключений (SCA Exemptions), при которых аутентификация может не выполняться по решениям эмитентов. Такими исключениями могут выступать платежи следующих категорий:

  • Платежи на незначительные суммы (Low value) — оплаты на суммы до 25 фунтов стерлингов (в пределах Великобритании) или 30 евро (в пределах Европейской экономической зоны), в случаях, когда с момента последней успешной аутентификации было проведено не более пяти платежей и общая сумма этих платежей не превышает 85 фунтов стерлингов или 100 евро соответственно.
  • Платежи с низким уровнем риска (Transaction Risk Analysis) — оплаты, проводимые эквайером, уровень мошенничества в платёжном трафике которого соответствует порогам PSD2.
  • Платежи доверенным мерчантам (Trusted beneficiaries) — оплаты в пользу тех мерчантов, которые по инициативе или с согласия держателя карты занесены в список доверенных.
  • Безопасные корпоративные платежи (Corporate payments) — оплаты, инициируемые юридическими лицами с использованием процессов и протоколов, обеспечивающих высокий уровень защиты от мошенничества (таких как Electronic Banking Internet Communication Standard, EBICS).

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

Работа с допустимыми исключениями

Применение исключений может уменьшать количество действий со стороны пользователей и положительно влиять на проходимость платежей. При этом ответственность за возможные мошеннические действия для таких платежей возлагается на мерчанта.

Если эта возможность подключена, то применение соответствующих исключений инициируется автоматически, кроме тех случаев, когда со стороны мерчанта указано предпочтительное выполнение аутентификации. При этом следует учитывать, что в случае проведения платежа, который относится к исключениям, итоговое решение о необходимости аутентификации так же остаётся за эмитентом. С его стороны может быть направлен „мягкий отказ“ (soft decline), означающий необходимость выполнения аутентификации. В случае получения такого отказа аутентификация для искомого платежа выполняется стандартно, без применения исключений, и, как правило, в варианте challenge flow. Кроме того, исключения не могут применяться при регистрации повторяемых оплат — в таких случаях выполнение аутентификации 3‑D Secure обязательно.

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

Пользовательские сценарии

Со стороны пользователя проведение оплаты с аутентификацией 3‑D Secure может выглядеть следующим образом:

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

Подключение

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

Форматы данных

Обязательные параметры

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

Параметры Описание

customer_email
string

Адрес электронной почты пользователя. Необходимо передавать, если не передан номер телефона пользователя

customer_phone
string

Номер телефона пользователя. Необходимо передавать, если не передан адрес электронной почты пользователя

Рекомендуемые параметры

В запросах на проведение платежей, для которых применима аутентификация 3‑D Secure, рекомендуется передавать ряд необязательных параметров, указание которых может повышать вероятность выбора эмитентами варианта аутентификации frictionless flow, без участия пользователя. Это может быть, например, информация о предпочтительном варианте аутентификации, выбранном способе доставки, расчётном адресе пользователя и его контактных данных. Такую информацию можно собирать любым удобным способом, в том числе непосредственно в платёжной форме (с использованием возможности сбора данных о пользователях) и указывать в следующих параметрах.

Параметр Описание

payment_merchant_risk
string

Дополнительные сведения об оплате товара или услуги пользователем и о предпочтительном для мерчанта варианте аутентификации 3‑D Secure.

Представляют собой строку, полученную в результате кодирования исходного JSON-объекта с применением алгоритма Base64.

Рис. 1. Пример JSON-объекта
{ 
  "payment":{ 
    "reorder":"01",
    "preorder_purchase":"01",
    "preorder_date":"11-10-2022",
    "challenge_indicator":"01",
    "challenge_window":"01",
    "gift_card":{ 
      "amount":12345,
      "currency":"USD",
      "count":1
    }
  }
}
Рис. 2. Пример строки
eyAKICAicGF5bWVudCI6eyAKICAgICJyZW9yZGVyIjoiMDEiLAogICAgInByZW9yZGVyX3B1cmNoYXNlIjoiMDEiLAogICAgInByZW9yZGVyX2RhdGUiOiIxMS0xMC0yMDIyIiwKICAgICJjaGFsbGVuZ2VfaW5kaWNhdG9yIjoiMDEiLAogICAgImNoYWxsZW5nZV93aW5kb3ciOiIwMSIsCiAgICAiZ2lmdF9jYXJkIjp7IAogICAgICAiYW1vdW50IjoxMjM0NSwKICAgICAgImN1cnJlbmN5IjoiVVNEIiwKICAgICAgImNvdW50IjoxCiAgICB9CiAgfQp9==
2

challenge_indicator
string

Индикатор предпочтения по использованию варианта аутентификации challenge flow, который может принимать одно из следующих значений:

  • 01 — без предпочтений
  • 02 — предпочтительно не использовать
  • 03 — предпочтительно использовать
  • 04 — обязательно использовать
  • 05 — не использовать, анализ рисков выполнен на стороне мерчанта
  • 06 — не использовать, применить сценарий Data Only
  • 07 — не использовать, Strong Customer Authentication уже выполнена иным способом
  • 08 — не использовать, мерчант включен в список доверенных для этого пользователя
  • 09 — обязательно использовать, предпочтительно предложить пользователю добавить мерчанта в список доверенных
2-12

challenge_window
string

Индикатор размера окна для открытия страницы аутентификации, который может принимать одно из следующих значений:

  • 01 — 250 x 400 пикселей
  • 02 — 390 x 400 пикселей
  • 03 — 500 x 600 пикселей
  • 04 — 600 x 400 пикселей
  • 05 — полноэкранный режим
2-22

preorder_date
string

Планируемая дата поступления товара или услуги в формате ДД-ММ-ГГГГ 2-32

preorder_purchase
string

Индикатор предварительного заказа, который может принимать одно из следующих значений:

  • 01 — не является предварительным заказом
  • 02 — является предварительным заказом
2-42

reorder
string

Индикатор первичной или повторной покупки данного товара или услуги пользователем, который может принимать одно из следующих значений:
  • 01 — первичная покупка
  • 02 — повторная покупка
2-52

gift_card
object

Объект со сведениями о покупке предоплаченных или подарочных карт 2-62

amount
integer

Сумма покупки, в дробных единицах валюты, указанной в параметре currency этого же объекта 2-6-12-6

currency
string

Код валюты для суммы покупки в формате ISO 4217 alpha-3 (например, GBP) 2-6-22-6

count
integer

Количество приобретаемых предоплаченных или подарочных карт 2-6-32-6

customer_account_info
string

Информация об учётной записи пользователя на стороне веб-сервиса и о его контактных данных.

Представляет собой строку, полученную в результате кодирования исходного JSON-объекта с применением алгоритма Base64.

Рис. 3. Пример JSON-объекта
{ 
  "customer":{ 
    "address_match":"Y",
    "home_phone":"44991234567",
    "work_phone":"44997654321",
    "account":{ 
      "additional":"gamer12345",
      "age_indicator":"01",
      "date":"01-10-2022",
      "change_indicator":"01",
      "change_date":"01-10-2022",
      "pass_change_indicator":"01",
      "pass_change_date":"01-10-2022",
      "purchase_number":12,
      "provision_attempts":16,
      "activity_day":22,
      "activity_year":222,
      "payment_age_indicator":"01",
      "payment_age":"01-10-2022",
      "suspicious_activity":"01",
      "auth_method":"01",
      "auth_time":"01-10-202213:12",
      "auth_data":"login_0102"
    }
  }
}
Рис. 4. Пример строки
eyAKICAiY3VzdG9tZXIiOnsgCiAgICAiYWRkcmVzc19tYXRjaCI6IlkiLAogICAgImhvbWVfcGhvbmUiOiI3OTEwNTIxMTExMSIsCiAgICAid29ya19waG9uZSI6Ijc0OTU1MjExMTExIiwKICAgICJhY2NvdW50Ijp7IAogICAgICAiYWRkaXRpb25hbCI6ImdhbWVyMTIzNDUiLAogICAgICAiYWdlX2luZGljYXRvciI6IjAxIiwKICAgICAgImRhdGUiOiIwMS0xMC0yMDIyIiwKICAgICAgImNoYW5nZV9pbmRpY2F0b3IiOiIwMSIsCiAgICAgICJjaGFuZ2VfZGF0ZSI6IjAxLTEwLTIwMjIiLAogICAgICAicGFzc19jaGFuZ2VfaW5kaWNhdG9yIjoiMDEiLAogICAgICAicGFzc19jaGFuZ2VfZGF0ZSI6IjAxLTEwLTIwMjIiLAogICAgICAicHVyY2hhc2VfbnVtYmVyIjoxMiwKICAgICAgInByb3Zpc2lvbl9hdHRlbXB0cyI6MTYsCiAgICAgICJhY3Rpdml0eV9kYXkiOjIyLAogICAgICAiYWN0aXZpdHlfeWVhciI6MjIyMiwKICAgICAgInBheW1lbnRfYWdlX2luZGljYXRvciI6IjAxIiwKICAgICAgInBheW1lbnRfYWdlIjoiMDEtMTAtMjAyMiIsCiAgICAgICJzdXNwaWNpb3VzX2FjdGl2aXR5IjoiMDEiLAogICAgICAiYXV0aF9tZXRob2QiOiIwMSIsCiAgICAgICJhdXRoX3RpbWUiOiIwMS0xMC0yMDIyMTM6MTIiLAogICAgICAiYXV0aF9kYXRhIjoibG9naW5fMDEwMiIKICAgIH0KICB9Cn0==
3

address_match
string

Указатель совпадения расчётного адреса пользователя с адресом доставки, указанным в параметре customer_shipping, который может принимать одно из следующих значений:

  • Y — адреса совпадают
  • N — адреса не совпадают
3-13

home_phone
string

Номер домашнего телефона пользователя, в виде последовательности от четырёх до двадцати четырёх цифр без использования разделителей (например, 44991234567) 3-23

work_phone
string

Номер рабочего телефона пользователя, в виде последовательности от четырёх до двадцати четырёх цифр без использования разделителей (например, 44997654321) 3-33

account
object

Объект со сведениями об учётной записи пользователя на стороне веб-сервиса мерчанта 3-43

additional
string

Дополнительная информация об учётной записи пользователя, например её идентификатор, в произвольном формате с использованием до 64 символов 3-4-13-4

activity_day
integer

Количество попыток проведения оплаты за последние 24 часа, в виде числа от 0 до 999 (999) 3-4-23-4

activity_year
integer

Количество попыток проведения оплаты за последние 365 дней, в виде числа от 0 до 999 (999) 3-4-33-4

age_indicator
string

Индикатор давности учётной записи, который может принимать одно из следующих значений:
  • 01 — при невозможности оценить давность (при инициировании платежа без аутентификации пользователя)
  • 02 — при нулевой давности (при создании учётной записи для инициирования платежа)
  • 03 — при давности менее 30 дней
  • 04 — при давности от 30 до 60 дней
  • 05 — при давности более 60 дней
3-4-43-4

auth_data
string

Дополнительная информация об аутентификации на стороне веб-сервиса, в произвольном формате с использованием не более 255 символов 3-4-53-4

auth_method
string

Указатель способа последней аутентификации пользователя на стороне веб-сервиса, который может принимать одно из следующих значений:
  • 01 — отсутствие аутентификации
  • 02 — аутентификация с использованием данных, сохранённых на стороне веб-сервиса мерчанта
  • 03 — аутентификация с использованием технологии Federated Identity (например, Google Account или Facebook)
  • 04 — аутентификация с использованием аутентификатора, соответствующего стандартам Fast IDentity Online (FIDO)
3-4-63-4

auth_time
string

Дата и время последней аутентификации пользователя на стороне веб-сервиса в формате ДД-ММ-ГГГГчч:мм 3-4-73-4

date
string

Дата создания учётной записи в формате ДД-ММ-ГГГГ 3-4-83-4

change_date
string

Дата последних изменений в учётной записи, за исключением изменения или сброса пароля, в формате ДД-ММ-ГГГГ 3-4-93-4

change_indicator
string

Индикатор давности изменений в учётной записи, за исключением изменения или сброса пароля, который может принимать одно из следующих значений:
  • 01 — при нулевой давности (при изменениях в день проведения платежа)
  • 02 — при давности менее 30 дней
  • 03 — при давности от 30 до 60 дней
  • 04 — при давности более 60 дней
3-4-103-4

pass_change_date
string

Дата последнего изменения или сброса пароля в формате ДД-ММ-ГГГГ 3-4-113-4

pass_change_indicator
string

Индикатор давности последнего изменения или сброса пароля, который может принимать одно из следующих значений:
  • 01 — при невозможности оценить давность (пароль не был изменён или сброшен)
  • 02 — при нулевой давности (пароль был изменён или сброшен в день проведения платежа)
  • 03 — при давности менее 30 дней
  • 04 — при давности от 30 до 60 дней
  • 05 — при давности более 60 дней
3-4-123-4

payment_age
string

Дата добавления реквизитов платёжного инструмента в формате ДД-ММ-ГГГГ 3-4-133-4

payment_age_indicator
string

Индикатор давности сохранения данных платёжного инструмента, используемых для проведения платежа, который может принимать одно из следующих значений:
  • 01 — при невозможности оценить давность (платёж проводится без аутентификации в учётной записи)
  • 02 — при нулевой давности (данные карты сохранены в день проведения платежа)
  • 03 — при давности менее 30 дней
  • 04 — при давности от 30 до 60 дней
  • 05 — при давности более 60 дней
3-4-143-4

provision_attempts
integer

Количество попыток сохранения реквизитов для новых платёжных инструментов за последние 24 часа, от 0 до 999 (999) 3-4-153-4

purchase_number
integer

Количество покупок, совершённых через учётную запись за последние 6 месяцев, от 0 до 9999 (9999) 3-4-163-4

suspicious_activity
string

Индикатор подозрительной активности, который может принимать одно из следующих значений:
  • 01 — без выявления подозрительной активности
  • 02 — с выявлением подозрительной активности
3-4-173-4

customer_shipping
string

Информация о доставке товара или услуги пользователю.

Представляет собой строку, полученную в результате кодирования исходного JSON-объекта с применением алгоритма Base64.

Рис. 5. Пример JSON-объекта
{ 
  "customer":{ 
    "shipping":{ 
      "type":"01",
      "delivery_time":"01",
      "delivery_email":"test@gmail.com",
      "address_usage_indicator":"01",
      "address_usage":"01-10-2022",
      "city":"Vilnius",
      "country":"LT",
      "address":"Dukstu street 30",
      "postal":"LT-071171",
      "region":"Vilnius County",
      "region_code":"VL",
      "name_indicator":"01"
    }
  }
}
Рис. 6. Пример строки
eyAKICAiY3VzdG9tZXIiOnsgCiAgICAic2hpcHBpbmciOnsgCiAgICAgICJ0eXBlIjoiMDEiLAogICAgICAiZGVsaXZlcnlfdGltZSI6IjAxIiwKICAgICAgImRlbGl2ZXJ5X2VtYWlsIjoidGVzdEBnbWFpbC5jb20iLAogICAgICAiYWRkcmVzc191c2FnZV9pbmRpY2F0b3IiOiIwMSIsCiAgICAgICJhZGRyZXNzX3VzYWdlIjoiMDEtMTAtMjAyMiIsCiAgICAgICJjaXR5IjoiTW9zY293IiwKICAgICAgImNvdW50cnkiOiJSVSIsCiAgICAgICJhZGRyZXNzIjoiTGVuaW5hIHN0cmVldCAxMiIsCiAgICAgICJwb3N0YWwiOiIxMDkxMTEiLAogICAgICAicmVnaW9uX2NvZGUiOiJSVSIsCiAgICAgICJuYW1lX2luZGljYXRvciI6IjAxIgogICAgfQogIH0KfQ====
4

shipping
object

Объект со сведениями о доставке 4-14

address
string

Название улицы и номер дома в адресе доставки (с обозначением корпуса или строения, где это актуально), в виде строки длиной не более 150 символов 4-1-14-1

address_usage
string

Дата первого использования указанного адреса, в формате ДД-ММ-ГГГГ 4-1-24-1

address_usage_indicator
string

Индикатор давности первого использования указанного адреса доставки, который может принимать одно из следующих значений:
  • 01 — при нулевой давности (указанный адрес используется впервые)
  • 02 — при давности менее 30 дней
  • 03 — при давности от 30 до 60 дней
  • 04 — при давности более 60 дней
4-1-34-1

city
string

Название города (или иного населённого пункта) в адресе доставки, в виде строки длиной не более 50 символов 4-1-44-1

country
string

Код страны в адресе доставки в формате ISO 3166-1 alpha-2 (например, LT) 4-1-54-1

delivery_email
string

Адрес электронной почты в случае доставки на этот адрес, может содержать не более 255 символов 4-1-64-1

delivery_time
string

Индикатор срока доставки, который может принимать одно из следующих значений:
  • 01 — в день покупки в электронном виде
  • 02 — в день покупки в материальном виде
  • 03 — на следующий день после покупки
  • 04 — позднее чем на следующий день после покупки
4-1-74-1

name_indicator
string

Индикатор совпадения имени пользователя с именем получателя доставки, который может принимать одно из следующих значений:
  • 01 — имена совпадают
  • 02 — имена не совпадают
4-1-84-1

postal
string

Почтовый индекс в адресе доставки, представляет собой строку длиной не более 16 символов 4-1-94-1

region_code
string

Внутренний код региона в адресе доставки, представляет собой вторую часть международного кода территории (в формате ISO 3166-2), без двухбуквенного кода страны и разделительного дефиса, например VL для Вильнюсского уезда.

При указании значения этого параметра также необходимо указать значение параметра country этого же объекта

4-1-104-1

type
string

Указатель варианта доставки, который может принимать одно из следующих значений:
  • 01 — доставка на расчётный адрес держателя карты
  • 02 — доставка на другой подтверждённый адрес
  • 03 — доставка на адрес, не совпадающий с расчётным и не являющийся подтверждённым
  • 04 — доставка в магазин мерчанта
  • 05 — доставка в электронном виде
  • 06 — отсутствие доставки
  • 07 — другой вариант
4-1-114-1

customer_mpi_result
string

Информация о предыдущей аутентификации пользователя.

Представляет собой строку, полученную в результате кодирования исходного JSON-объекта с применением алгоритма Base64.

Рис. 7. Пример JSON-объекта
{ 
  "customer":{ 
    "mpi_result":{ 
      "acs_operation_id":"00000000-0005-5a5a-8000-016d3ea31d54",
      "authentication_flow":"01",
      "authentication_timestamp":"202210101050"
    }
  }
}
Рис. 8. Пример строки
eyAKICAiY3VzdG9tZXIiOnsgCiAgICAibXBpX3Jlc3VsdCI6eyAKICAgICAgImFjc19vcGVyYXRpb25faWQiOiIwMDAwMDAwMC0wMDA1LTVhNWEtODAwMC0wMTZkM2VhMzFkNTQiLAogICAgICAiYXV0aGVudGljYXRpb25fZmxvdyI6IjAxIiwKICAgICAgImF1dGhlbnRpY2F0aW9uX3RpbWVzdGFtcCI6IjIwMjIxMDEwMTA1MCIKICAgIH0KICB9Cn0==
5

mpi_result
object

Объект с данными о предыдущей аутентификации пользователя 5-15

acs_operation_id
string

Идентификатор предыдущей операции пользователя на стороне эмитента, не более тридцати шести символов. В качестве этого идентификатора необходимо использовать значение, полученное в параметре acs_operation_id оповещения о результате проведения предыдущего платежа 5-1-15-1

authentication_flow
string

Указатель варианта предыдущего прохождения аутентификации пользователем, полученный в параметре authentication_flow оповещения о результате проведения предыдущего платежа, который может принимать одно из следующих значений:

  • 01 — frictionless flow
  • 02 — challenge flow
5-1-25-1

authentication_timestamp
string

Дата и время предыдущей успешной аутентификации пользователя. В качестве значения необходимо использовать данные, полученные в параметре mpi_timestamp оповещения о результате проведения предыдущего платежа 5-1-35-1

billing_address
string

Название улицы в расчётном адресе пользователя 6

billing_city
string

Название города в расчётном адресе пользователя 7

billing_country
string

Код страны в расчётном адресе пользователя в формате ISO 3166-1 alpha-2 8

billing_postal
string

Почтовый индекс в расчётном адресе пользователя 9

billing_region_code
string

Внутренний код региона (штата, провинции или иной территориальной области) в расчётном адресе пользователя, например VL для Вильнюсского уезда.

Представляет собой вторую часть международного кода территории (в формате ISO 3166-2), без двухбуквенного кода страны и разделительного дефиса. При указании значения этого параметра также необходимо указать значение параметра billing_country

10

customer_email
string

Адрес электронной почты пользователя 11

customer_phone
string

Номер телефона пользователя, в виде последовательности от четырёх до двадцати четырёх цифр без использования разделителей 12