Init - Создание платежной сессии

Выполняется с помощью команды Init. Метод используется в случае, если форма ввода данных банковской карты находится на стороне theMAP. При положительном результате вызова метода возвращается уникальный идентификатор, который позволяет в дальнейшем вызвать страницу оплаты, находящуюся на стороне theMAP, и перенаправить на нее пользователя для ввода данных карты.

При получении идентификатора сессии возможно указание цели использования платежной формы - для блокировки средств на карте или для сохранения карты в хранилище theMAP для последующих списаний. В случае сохранения карты последующие списания могут производиться как с вводом CVV2/CVC2, так и безакцептно – без ввода каких-либо данных и участия держателя карты. Это могут быть рекуррентные списания или классические транзакции без ввода CVV2/CVC2. В последнем случае возможны отказы из-за ограничений эмитента в связи с необходимостью применения технологии 3-D Secure.

Страница оплаты может быть оформлена в дизайне Продавца и не является уникальной (Продавец может иметь несколько страниц ввода данных для разных случаев).

Название Описание Формат Обязательный
key Идентификатор Продавца. Выдается с параметрами тестового/боевого доступа Строка Да
merchant_order_id Идентификатор платежа в системе Продавца Строка (максимум 50 символов) Да
amount Сумма блокировки в минимальных единицах валюты (копейках) Целое число Да
custom_params_rdy Дополнительные параметры платежа, для отображения на шаблоне и для составления адреса возврата пользователя в случае, если он параметризован.

Перечень возможных параметров:
  1. Email - адрес электронной почты клиента для отправки фискального чека
  2. successUrl - адрес для перенаправления Пользователя со страницы оплаты в случае успеха
  3. failUrl - адрес для перенаправления Пользователя со страницы оплаты в случае неуспеха
  4. Description - дополнительное описание заказа для отображения на форме оплаты
  5. PayButtonCustomText - текст для отражения на кнопке для инициирования оплаты на форме.

    Возможность использования данных параметров необходимо уточнить у support@mapcard.pro
Объект формата {"param1":"test", "param2":"test"...} Нет
add_card Параметр, задающий необходимость сохранения карты после оплаты. Используется вместе с параметром "type":"Pay". Значение по умолчанию false - карта не сохраняется true/false Нет
type Тип создаваемой сессии.

  1. Pay - платежная сессия
  2. Add - сессия для сохранения карты
Строка: "Pay"/"Add" Да
payment_type Тип оплаты.

  1. OneStep - одностадийная оплата. В случае одностадийной операции, в результате успеха деньги будут списаны с карты пользователя
  2. TwoStep - двухстадийная оплата
Строка: "OneStep"/"TwoStep" Да
action Дополнительное действие с заблокированной суммой.

  1. Unblock - разблокировка. Доступно только для TwoStep
Строка Нет
recurrent Необходимо использовать в случае, если сохраняемая карта будет использоваться для рекуррентных списаний. Возможность использования необходимо уточнить дополнительно у support@mapcard.pro true/false Нет
lifetime Срок действия сессии (в секундах), по истечении которого оплата по данной сессии будет невозможна. Если не передан, время жизни сессии устанавливается равным одной неделе Целое число Нет
goods Список наименований товаров/услуг для отправки в ОФД (54-ФЗ). Общая сумма всех товаров должна соответствовать amount Массив объектов Нет
├─ name Наименование товара/услуги, не более 128 символов Строка В случае передачи goods параметр обязательный
├─ price Сумма блокировки в минимальных единицах валюты (копейках) Строка В случае передачи goods параметр обязательный
├─ tax Ставка НДС. Целое число от 1 до 6. В случае отсутствия в запросе, значение берется из настроек терминала

  1. 1 – ставка НДС 20%
  2. 2 – ставка НДС 10%
  3. 3 – ставка НДС расч. 20/120
  4. 4 – ставка НДС расч. 10/110
  5. 5 – ставка НДС 0%
  6. 6 – НДС не облагается
Число Нет
├─ payment_subject_type Признак предмета расчета. Целое число от 1 до 13. Параметр не обязательный, в случае отсутствия в запросе, будет передано значение 1 – Товар.

  1. 1 – Товар
  2. 2 – Подакцизный товар
  3. 3 – Работа
  4. 4 – Услуга
  5. 5 – Ставка азартной игры
  6. 6 – Выигрыш азартной игры
  7. 7 – Лотерейный билет
  8. 8 – Выигрыш лотереи
  9. 9 – Предоставление РИД
  10. 10 - Платеж
  11. 11 – Агентское вознаграждение
  12. 12 – Составной предмет расчета
  13. 13 – Иной предмет расчета
  14. Число Нет
    ├─ payment_method_type Признак способа расчета. Целое число от 1 до 7. Параметр не обязательный, в случае отсутствия в запросе, будет передано значение 4 – Полный расчет.

    1. 1 – Предоплата 100%
    2. 2 – Частичная предоплата
    3. 3 – Аванс
    4. 4 – Полный расчет
    5. 5 – Частичный расчет и кредит
    6. 6 – Передача в кредит
    7. 7 – Оплата кредита
    8. Число Нет
      ├─ supplier Данные поставщика. Опциональное поле в товаре Объект Нет
      ├── name Наименование Строка В случае передачи supplier параметр обязательный
      ├── inn ИНН поставщика Строка В случае передачи supplier параметр обязательный
      ├── phone_numbers Список номеров телефонов Массив строк Нет
      card_uid Идентификатор карты theMAP. Используется для платежа по сохраненной карте Нет
      credential Объект Нет
      ├─ login Логин держателя карты, зарегистрированного в системе Продавца. Используются только в случае, если карта сохранена к конкретному пользователю Строка (максимум 50 символов) Нет
      ├─ password Пароль держателя карты, зарегистрированного в системе Продавца. Используются только в случае, если карта сохранена к конкретному пользователю Строка (максимум 50 символов) Да
      ├─ merchant_name Наименование продавца. Используются только в случае, если карта сохранена за Мерчантом Строка (максимум 50 символов) Нет
      ├─ merchant_password Пароль Мерчанта для совершения операций. Используются только в случае, если карта сохранена за Мерчантом Строка (максимум 50 символов) Нет
      ├─ terminal_password Пароль терминала. Выдается Продавцу с параметрами тестового/боевого доступа Строка (максимум 50 символов) Да
      split Используется для разделение суммы произведенного списания на составные части для последующих расчетов с контрагентами. Общая сумма всех составных частей должна соответствовать amount Массив Нет
      ├─ split_terminal_id Номер терминала для проведения операции Число В случае передачи split параметр обязательный
      ├─ amount Сумма разделения Число В случае передачи split параметр обязательный
      ├─ purpose Описание Строка В случае передачи split параметр обязательный
      ├─ fee Размер комиссии Число В случае передачи split параметр обязательный

      * - Пример передачи goods:

      "goods": [{"name": "Mock1","price": "500","tax": 2,"payment_subject_type": 3,"payment_method_type": 4,"supplier": {"name": "ООО Ромашка","inn": "123456789112","phone_numbers": [" 71111111111"]}},{"name": "Mock2","price": "500","tax": 3,"payment_subject_type": 1,"payment_method_type": 6,"supplier": {"name": "test","supplierINN": "123","phoneNubmers": ["1","2"]}},{"name": "Mock3","price": "500","tax": 3,"payment_subject_type": 6,"payment_method_type": 4},{"name": "Mock4","price": "500","tax": 1,"payment_subject_type": 1,"payment_method_type": 4}]

      В зависимости от бизнес-сценария, карта может быть сохранена:

      • с привязкой к Логину Пользователя
      • с привязкой к Терминалу
      • с привязкой к Мерчанту В зависимости от того, за кем сохраняется карта, необходимо передавать различные параметры в запросе сохранения карты, запросе списка сохраненных карт, и блокировки средств на карте. Стандартный кейс сохранения карты на стороне theMAP - с привязкой к Логину Пользователя. В случае сохранения карты за Терминалом или за Мерчантом, соответсвие сохраненных карт с Пользователями производится на стороне Мерчанта. В ответе на запрос списка сохраненных карт в этом случае будет содержаться весь массив сохраненных карт.