Перейти к содержанию

Типы данных

Простые типы данных

Тип данных Описание
Int16, Int32, Int64 Целочисленные знаковые типы данных
Uint16, Uint32, Uint64 Целочисленные беззнаковые типы данных
String Строковый тип. В круглых скобках после указания типа может указываться через запятую минимальные и максимальное значение общей длины элемента в символах. Если в скобках приведен только один параметр, он определяет обязательную длину элемента.
String-Number Представляет собой строку, в качестве символов которой могут выступать только цифры.
String-Decimal Строка, содержащая целое или дробное число с фиксированной точностью. В круглых скобках через запятую может указываться суммарное количество десятичных разрядов и количество разрядов после разделителя. В качестве разделителя целой и дробной части используется символы «.» (точка) или «,» (запятая). Допускаются пробел или апостроф в качестве разделителя разрядов (например, 21’012.01 или 2 933,02).
Boolean Логический тип данных, принимает значения:
  • 0 – ложь;
  • 1 – истина;
DateTime Строка, содержащая дату и время. Формат «YYYY-MM-DDThh:nn:ss.ZZZZZ», где:
  • YYYY-MM-DD – год-месяц-день;
  • hh:nn:ss – – часы-минуты-секунды;
  • ZZZZZ - часовой пояс (в формате +hh:nn или –hh:nn), может отсутствовать, при отсутствии используется часовой пояс сервера +03.00.
Enum Строковое перечисление. Значение элемента должно соответствовать одному из перечисленных для элемента значений.
UID Строка, содержащая уникальный идентификатор.
URL Строка, содержащая URL.
Phone Подтип String-Number (10,16). Представляет собой номер телефона в формате «CCCNNXXXXXXX», где:
  • CCC - код страны (от 1 до 5 цифр);
  • NN - код оператора мобильной связи (от 1 до 5 цифр);
  • XXXXXXX - номер абонента (от 5 до 10 цифр).

Идентификаторы

Параметр Тип Описание
ap_store_id String(1,30) Уникальный в системе идентификатор точки обслуживания. Генерируется в системе «Artpay» при регистрации объекта
ap_aggregator_id String(1,30) Уникальный в системе идентификатор агрегатора. Генерируется в системе «Artpay» при регистрации объекта
ap_aquirer_id String(1,30) Уникальный в системе идентификатор эквайера. Генерируется в системе «Artpay» при регистрации объекта
ap_batch_num Int64 Уникальный номер пакета заказов в разрезе агрегатора или точки обслуживания (при подключении без агрегатора). Генерируется на агрегаторе или точке обслуживания перед отправкой запроса на регистрацию пакета заказов.
ap_order_num String(1,64) Уникальный номер заказа для одиночных заказов или номер заказа в пакете при использовании пакетной обработки. Для простой одиночной оплаты может быть установлен в «0», в этом случае «Artpay» самостоятельно генерирует уникальный номер заказа, однако в этом случае межсистемная идентификация пользовтелей становится недоступной. Для пакетной обработки в большинстве случаев может быть просто порядковым номером заказа внутри пакета. Полный номер заказа в этом случае для дальнейшей идентификации состоит из ap_batch_num и ap_order_num Генерируется на агрегаторе или точке обслуживания перед отправкой запроса на регистрацию заказа (-ов)
ap_batch_id String Уникальный в системе идентификатор зарегистрированного пакета заказов при пакетной обработке. Генерируется в системе «Artpay» в процессе регистрации заказа.
ap_order_id String Уникальный в системе идентификатор зарегистрированного заказа заказов при использовании простой одиночной обработки. Генерируется в системе «Artpay» в процессе регистрации заказа.
ap_invoice_id Int64 Уникальный в системе идентификатор счета. Генерируется в системе «Artpay» в процессе создания счета
ap_p2p_id String Уникальный в системе идентификатор операции перевода средств P2P. Генерируется в системе «Artpay» в процессе регистрации операции перевода.
ap_user_ext_id String(1,50) Уникальный идентификатор пользователя внешней системы. Используется для доступа пользователя внешней системы к управлению данными карт, зарегистрированными в «Artpay».
ap_user_session_id UID Уникальный идентификатор сессии пользователя. Генерируется в системе «Artpay» при авторизации пользователя в системе.
ap_wallet_id UID Уникальный идентификатор зарегистрированного в кабинете пользователя платежного средства.
ap_erip_invoice_id String(1,30) Уникальный номер счета в разрезе контрагента для оплаты в системе ЕРИП. Генерируется в системе «Artpay»

Общие элементы сообщений

Параметр Тип Описание
ap_request String Тип запроса
ap_client_dt DateTime Дата и время на клиентском приложении. Сервер должен проверять, что дата и время на клиентском приложении отличается максимум на 12 часов от даты и времени на сервере.
ap_client_type Enum Тип используемого клиентcкого приложения:
  • «srv» – взаимодействие осуществляется между сервером точки обслуживания\агрегатора и сервером «Artpay»;
  • «brw» – интернет-браузер;
  • «apk» – мобильное приложение для Android;
  • «ipa» – мобильное приложение iOS;
  • «pos» – терминал.
ap_client_inf String(1,512) Краткая информация о клиентском приложении. Например, название программы интернет-браузера, для мобильного приложения – название приложения и используемой библиотеки. Также по возможности рекомендуется включить в содержимое данного поля информацию о клиентском устройстве: производитель и модель устройства (для мобильного приложения), наименование и версию операционной системы клиентского приложения. Например:
  • Chrome 49.0.2623.112 (Mac OS X 10.7.2);
  • anyapp/libArtpay (Lenovo P1 Vibe/Android 5.1.1).
ap_client_ver String(1,16) Версия на клиенте (версия мобильного приложения/версия приложения на терминале).
ap_proto_ver String(3,10) Версия протокола.
ap_test Boolean В запросе: Уведомляет сервер об использовании тестового режима на клиенте. В случае, если значение параметра установлено в «1», клиент находится в тестовом режиме.
В ответе: Уведомляет клиента об использовании тестового режима сервера. В случае, если значение параметра установлено в «1», сервер находится в тестовом режиме.
В обоих случаях при отсутствии, по умолчанию, параметр принимает значение «0» (боевой режим).
ap_lang String(2) Язык пользовательского интерфейса. Принимает значения (ISO 639-1):
  • «ru» – русский;
  • «be» – белорусский;
  • «en» – английский;
  • «uk» – украинский;
  • «pl» – польский;
  • «de» – немецкий.
По умолчанию используется «ru».
ap_server_dt DateTime Дата и время на сервере. Клиент может дополнительно проверять, что дата и время на сервере отличаются максимум на 12 часов от даты и времени на клиенте.

Элементы статуса

Параметр Тип Описание
ap_status Enum Статус обработки запроса. Принимает значения:
  • «Success» – выполнено успешно;
  • «Warning» – выполнено с замечаниями;
  • «Error» – ошибка выполнения операции;
  • «SignIn» - для выполнения запроса необходимо выполнить вход в систему (например, идентификатор сессии в запросе является недействительным и требуется заново выполнить авторизацию пользователя);
  • «Malfunction» – ошибка выполнения операции, сбой системы (информирует, что система перегружена и следует повторить операцию позже).
ap_result_code Int32 Целочисленный код выполнения запроса. Значения:
  • «0» - выполнено успешно;
  • «1..99» - выполнено с замечаниями;
  • иначе – ошибка операции.
ap_result_text String Описание результата выполнения запроса на языке указанном в параметре ap_lang.

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

  • ap_status;
  • ap_result_code;
  • ap_result_text.

Элементы финансовой операции

Сумма и валюта операции

Параметр Тип Описание
ap_amount String-Decimal(12,2) Сумма операции. Формат суммы:
  • сумма с разделителем:
    • «10,00» - 10 руб. 00 коп.
    • «10,1» - 10 руб. 10 коп.
    • «10,» - 10 руб. 00 коп.
    • «10» - 10 руб. 00 коп.
    • «0,11» - 0 руб. 11 коп.
    • «,11» - 0 руб. 11 коп.
    • «,1» - 0 руб. 10 коп.
ap_currency String-Number(3) Цифровой трехсимвольный код валюты либо его буквенное обозначение согласно ISO4271. Например, «933» для бел. руб.

Элементы данных пользователя

Структура stName, ФИО пользователя

Параметр Тип Описание
ap_fisrtname String(1,30) Имя
ap_surname String(1,30) Фамилия
ap_patronymic String(1,30) Отчество

Структура stAddress, адрес пользователя или организации

Параметр Тип Описание
ap_city String(1,30) Город
ap_street String(1,30) Улица
ap_house String(1,18) Дом
ap_building String(1,10) Корпус
ap_apartment String(1,10) Квартира

Дополнительные типы данных

Структура дополнительной суммы subAmount

Параметр Тип Обязательность Описание
ap_amount_type Enum Да Тип дополнительной суммы:
  • Penalty – пеня;
  • Fee – комиссия;
  • Debt – задолженность.
ap_amount String-Decimal (12,2) Да Сумма операции.
ap_currency String(3) Да Валюта операции.

Структура дополнительных данных по оплаченному счету АИС ЕРИП

Параметр Тип Обязательность Описание
ap_invoice_create_dt DateTime Нет Дата формирования требования к оплате
ap_invoice_desc String Нет Краткое описание приобретаемых товаров или оказываемых услуг. Эхо из запроса регистрации счета для оплаты в ЕРИП.
ap_erip_cust_account String(1..30) Нет Номер лицевого счета плательщика ЕРИП у сервис провайдера в разрезе услуги. Эхо из запроса регистрации счета для оплаты в ЕРИП.
ap_erip_auth_type String(1..10) Нет Способ идентификации плательщика для авторизации суммы
ap_erip_term_type String-Number Нет Тип терминала согласно протоколу off-line сообщений
ap_erip_agent_code String-Number Нет Код расчетного агента