# Готовые интеграции

Раздел содержит приложения с готовыми интеграциями, плагины CRM,CMS,ERP и инструкции к ним. Плагины для CMS размещены на сервисе GitHub, приложения скачать можно по указанным ссылкам в разделах. Вы можете работать с исходным кодом плагинов, который размещен в том же репозитории, в котором находятся файлы с архивами. В случае, если плагин необходимый вам отсутствует в списке, обратитесь в Cлужбу поддержки (opens new window), мы постараемся помочь.

ОБРАТИТЕ ВНИМАНИЕ!

Плагины для CMS реализованы на базе API-запросов. Если вы хотите модифицировать плагин, ознакомьтесь со справочником API.

# Все интеграции

Ознакомиться со всеми готовыми решениями для интеграции вы можете по ссылке (opens new window). Здесь вы найдете полный список доступных решений и сможете выбрать наиболее подходящий вариант для ваших задач.

# amoCRM

# Установка виджета в amoCRM

Установить виджет Вы можете двумя способами:

# 1.Установка через amoMarket

Для этого Вам необходимо открыть раздел “amoMarket”, написать в строке поиска “Mandarin” и нажать кнопку “Установить бесплатно” в блоке виджета.

amoCRM_Mandarin

Далее установите галочку в соответствии со скриншотом и нажмите кнопку “Установить”.

amoCRM_Mandarin

Отлично! Теперь виджет установлен и Вы можете перейти к его настройкам.

# 2.Установка по ссылке

Для установки виджета откройте Ссылку (opens new window) Выберете аккаунт amoCRM в который Вы хотите установить виджет и нажмите кнопку “Разрешить”

amoCRM_Mandarin

После нажатия кнопки - виджет автоматически установится в Ваш аккаунт и будет доступен к настройке.

# Первичная настройка виджета

# Подключение и настройка магазинов

Для подключения магазина Вам необходимо открыть раздел “Настройки” в виджете и далее открыть раздел “Магазины”

amoCRM_Mandarin

В виджете нет ограничений на количество подключаемых магазинов.

Чтобы добавить новый магазин Вам необходимо:

  1. Укажите любое произвольное значение в “Название магазина”
  2. Укажите параметр “MID”, который был Вами получен у технической поддержки Mandarin
  3. Укажите параметр “Secret Key”, который был Вами получен у технической поддержки Mandarin

Для завершения добавления нажмите кнопку “Добавить магазин”.

Важно!

Для сохранения настроек необходимо нажать кнопку “Сохранить”. В ином случае после выхода из настроек виджета - никакие введенные данные не сохранятся.

Дополнительно как при создании, так и при редактировании настроек магазина Вы можете:

  1. Активировать фискализацию Для этого Вам необходимо нажать на чек-бокс справа от текста “Включить фискализацию” и заполнить такие данные, как:
    1.1 Система налогообложения
    1.2 Ставка НДС
    1.3 Способ расчета
    1.4 Предмет расчета
    После заполнения всех данных в результате оплаты эквайринг будет формировать чеки и направлять их клиенту, а также в ФНС (если у Вас настроена онлайн-касса в ЛК Mandarin)

  2. Активировать функцию на выбор (одновременно может быть активирована только одна функция из предложенных):
    2.1 Рекуррентные платежи по умолчанию При активации данного чек-бокса в окне формирования ссылок на оплату будет автоматическая установка рекуррентности платежей, которую Вы в т. ч. сможете деактивировать при необходимости - данная функция лишь отвечает за установку “по умолчанию”.
    2.2 Предоплата по умолчанию При активации данного чек-бокса в окне формирования ссылок на оплату будет автоматическая установка критерия “Предоплата” у платежа, который Вы в т. ч. сможете деактивировать при необходимости - данная функция лишь отвечает за установку “по умолчанию”.

# Настройка соответствия полей

Чтобы произвести настройку, Вам необходимо открыть раздел “Настройки” в виджете, далее нажать на кнопку “Сделки”, а после нажать на кнопку “Настройки полей”

amoCRM_Mandarin

Виджет способ подставлять в карточку сделки такие данные, как:

  1. Ссылка на оплату Подставляется последняя сформированная ссылка на оплату в рамках данной сделки

  2. Сумма платежа Общая сумма произведенных оплат клиентом

  3. Сумма предоплаты Общая сумма произведенных предоплат клиентом (при формировании ссылки на оплату с параметром “Предоплата”)

  4. Количество рекуррентных платежей Общее запланированное количество рекуррентных платежей

  5. Сумма рекуррентных платежей Общая запланированная сумма рекуррентных платежей

Чтобы произвести настройку соответствия полей, предварительно Вам необходимо создать данные поля в карточке сделки. Если Вы уже производили какие-то настройки в виджете, то обязательно нажмите кнопку “Сохранить” для того, чтобы введенные данные не потерялись.

При условии наличия нужных Вам полей в сделке (если Вы их уже создали, либо они были ранее) - выберете данные поля в списке доступных полей, который отображается справа от соответствующего параметра.

Важно!

Для сохранения настроек необходимо нажать кнопку “Сохранить”. В ином случае после выхода из настроек виджета - никакие введенные данные не сохранятся.

# Настройка автоматической смены статуса при оплате

При успешной оплате по сформированной ссылке виджет способен изменять статус у данной сделки как в случае полной оплаты, так и в случае предоплаты.

Чтобы настроить данную функцию, Вам необходимо открыть раздел “Настройки” в виджете и далее нажать на кнопку “Сделки”, а после на кнопку “Настройка воронок”

amoCRM_Mandarin

После открытия данного раздела Вы можете указать такие данные, как:

  1. Магазин по умолчанию Выберете из списка добавленных ранее магазинов тот магазин, который Вы хотите чтобы автоматически выбирался в окне формирования ссылки в данной воронке

  2. Этап при полной оплате Выберете из списка этап на который Вы хотите, чтобы перемещались сделки в случае полной оплаты

  3. Этап при предоплате Выберете из списка этап на который Вы хотите, чтобы перемещались сделки в случае предоплаты

Важно!

Для сохранения настроек необходимо нажать кнопку “Сохранить”. В ином случае после выхода из настроек виджета - никакие введенные данные не сохранятся.

# Использование виджета

# Формирование ссылки на оплату

Для формирования ссылки на оплату Вам необходимо открыть сделку в amoCRM в рамках которой Вы хотите, чтобы была сформирована ссылка. Далее выбрать раздел “Mandarin” и после нажать на кнопку “Создать ссылку на оплату”

amoCRM_Mandarin

# Добавление товара в окне формирования ссылки

Далее Вам необходимо добавить товар в окне формирования ссылки. Для этого нажмите кнопку “Добавить товар” и выберете товар из списка доступных В данном списке отображаются товары, которые были Вами ранее добавлены в список “Товары” внутри amoCRM

amoCRM_Mandarin

После добавления товара у Вас автоматически установится цена и количество, которые Вы сможете отредактировать.

# Настройка работы сформированной ссылки

При открытии раздела “Настройки магазина” Вы можете указать такие данные, как:

  1. Магазин В данном пункте отображается список добавленных ранее магазинов, а также подставляется по умолчанию тот магазин, который был Вами выбран в настройке воронок

  2. Активация функции рекуррентных платежей При активации данного чекбокса сформированная ссылка будет с функцией рекуррентности и у клиента будет происходит периодическое списание средств в том количестве, которое вы укажите в пункте “Количество платежей”

  3. Активация функции предоплаты Если Вы работаете с предоплатами, то после активации данного чекбокса у Вас появится возможность указать “Сумма предоплаты”. В таком случае первоначально ссылка будет отображать ту сумму, которая указана как для предоплаты и после ее внесения в рамках этой же ссылки клиент сможет произвести остаточный платеж.

После указания всех данных нажмите на кнопку “Создать ссылку”. В случае если ошибок не возникло - сформируется ссылка в соответствии с указанными Вами ранее данными. В результате создания ссылки:

  1. Сформированная ссылка появится в списке “Созданные ссылки”
  2. Последняя сформированная ссылка автоматически подставится в то поле сделки, которое указано у Вас в настройках

# Работа со сформированной ссылкой на оплату

Сформированная ссылка появится в блоке “Созданные ссылки”. В любой момент Вы сможете открыть информацию нажав на блок с нужной Вам ссылкой

amoCRM_Mandarin

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

amoCRM_Mandarin

# Ссылки с рекуррентным платежом

После произведения первой оплаты по ссылке клиент выражает согласие на проведение всех последующих рекуррентных платежей. Списания будут происходить автоматически. Чтобы отменить рекуррентный платеж, Вам необходимо открыть сделку в рамках которой была сформирована данная ссылка. После этого нажать на блок со ссылкой с признаком “Рекуррентный платеж” и далее нажать на кнопку “Отменить”

amoCRM_Mandarin

# Автоматическое разнесение оплат

После произведения платежа виджет автоматически изменит статус у той сделки, в рамках которой была сформирована ссылка, на тот статус, который выбран был Вами в разделе “Настройки воронок” в настройках виджета

Также возможно пошаговое передвижение сделки при активации параметра “Предоплата” в момент формирования ссылки. В этом случае сделка вначале изменит свой статус на тот, который указан в настройках как для статуса “Предоплата”, а уже после внесения полной оплаты изменит на тот статус, который указан как для “Полной оплаты”

При открытии сделки в списке “Созданные ссылки” у Вас отображается текущий статус оплаты по сформированной ссылке

amoCRM_Mandarin

# Bitrix24

Каждый плагин проставляет свою платежную систему, если будет установлено два плагина, то у пользователя будет выбор - Рассрочка и Оплата картой.

# Начало

Установить плагин, ссылки выше.

Перед началом настроек модуля платёжной системы Mandarin необходимо зарегистрировать личный кабинет на платформе (opens new window), инструкцию по созданию ЛК можно найти здесь (opens new window). После регистрации в ЛК Mandarin откройте страницу своего проекта и укажите в качестве параметра "адрес отправки коллбэка" значение "https://mandarinio.bkvsoft.com/mandarin/app/Classes/UrlStarter.php?type=callback" без кавычек.

Bitrix24_Mandarin

Для настроек модуля платёжной системы "Mandarin" перейдите в раздел "Сайты и магазины", выбрав соответствующий пункт из левого меню портала CRM. На открывшейся странице выберите пункт "Платёжные системы" из выпадающего списка пункта "Платежи и Доставка" верхнего меню (Рис.1). Если модуль был успешно установлен, на странице платёжных систем в списке появятся платёжная система "Mandarin" для физического типа плательщика. Выберите необходимую для настройки платёжную систему и двойным щелчком мыши по названию (или выбрав пункт "Изменить" из контекстного меню) перейдите к изменению её параметров.

Bitrix24_Mandarin

# Настройка платежной системы для оплаты картой

На закладке "Платежная система" поля заполните следующим образом (Рис.2):

  • Обработчик: Mandarin Rest (MANDARIN)

  • Тип платежной системы: по умолчанию оставить пустым

  • Заголовок: Оплата банковской картой

  • Название: Оплата банковской картой

  • Активность: установить флаг

  • Сортировка: установить по желанию

Описание:

  • Логотип платёжной системы: Загруженный логотип

  • Открывать в новом окне: оставить по умолчанию

  • Тип оплаты: Безналичный

  • Разрешить автопересчет оплаты: оставить по умолчанию

  • Разрешить печать чеков: оставить по умолчанию

  • Кодировка: оставить по умолчанию

  • Код: оставить по умолчанию

  • Внешний код: MANDARIN

Bitrix24_Mandarin

# Настройка обработчика ПС для платежей

На вкладках раздела "Настройка обработчика ПС" для настройки всех полей необходимо развернуть их показ, нажав на ссылку "Показать всё". Для настройки платёжной системы Mandarin заполните поля вкладки "Физическое лицо (s1)"). Если у какого-либо поля на вкладке ("Физическое лицо (s1)") установлен флаг "По умолчанию", то значение данного поля будет браться из соответствующего поля вкладки "По умолчанию" текущей платёжной системы. В противном случае учитывается значение, которое было задано непосредственно в поле данной вкладки.

  • MID* (обязательное для заполнения) - Значение (заполняется из поля MID личного кабинета сайта mandarinpay.com)

  • Secret* (обязательное для заполнения) - Значение (заполняется из поля Secret-Key личного кабинета сайта mandarinpay.com)

  • Домен сайта* (обязательное для заполнения) - Значение (указывается домен сайта в формате site.ru без https://)

  • Тип оплаты* (обязательное для заполнения) - Одностадийная или Двухстадийная по выбору

  • Стадия сделки для списания средств - Название стадии, при переводе сделки на которую будет произведено списание замороженной суммы со счета клиента если выбран тип оплаты "Двухстадийная". ВНИМАНИЕ! Списание будет произведено для ВСЕХ активных оплат, относящихся к данной сделке (созданных при двухстадийном типе оплаты).

  • Стадия сделки для возврата средств - Название стадии, при переводе сделки на которую будет произведён возврат замороженной суммы на счет клиента если выбран тип оплаты "Двухстадийная". ВНИМАНИЕ! Возврат будет произведён для ВСЕХ оплат, относящихся к данной сделке (созданных при двухстадийном типе оплаты), по которым не было произведено списание средств.

Поля раздела "Оплаты" следует оставить заполненными значениями по умолчанию.

Bitrix24_Mandarin

# Ограничения

На закладке "Ограничения" для платёжной системы Mandarin (Физическое лицо) тип плательщика "Физическое лицо" будет установлен автоматически.

# Настройка платежной системы для рассрочки

На закладке "Платежная система" поля заполните следующим образом:

  • Обработчик: Mandarin Rest Credit (MANDARIN_CREDIT)

  • Тип платежной системы: по умолчанию оставить пустым

  • Заголовок: Оформить кредит

  • Название: Оформить кредит

  • Активность: установить флаг

  • Сортировка: установить по желанию

Описание:

  • Логотип платёжной системы: Загруженный логотип

  • Открывать в новом окне: оставить по умолчанию

  • Тип оплаты: Безналичный

  • Разрешить автопересчет оплаты: оставить по умолчанию

  • Разрешить печать чеков: оставить по умолчанию

  • Кодировка: оставить по умолчанию

  • Код: оставить по умолчанию

  • Внешний код: MANDARIN_CREDIT

Bitrix24_Mandarin

# Настройка обработчика ПС для рассрочки

На вкладках раздела "Настройка обработчика ПС" для настройки всех полей необходимо развернуть их показ, нажав на ссылку "Показать всё". Для настройки платёжной системы Mandarin заполните поля вкладки "Физическое лицо (s1)"). Если у какого-либо поля на вкладке ("Физическое лицо (s1)") установлен флаг "По умолчанию", то значение данного поля будет браться из соответствующего поля вкладки "По умолчанию" текущей платёжной системы. В противном случае учитывается значение, которое было задано непосредственно в поле данной вкладки.

  • API ключ* (обязательное для заполнения) - Значение (запросить его нужно у Службы поддержки (opens new window))

  • Домен сайта* (обязательное для заполнения) - Значение (указывается домен сайта в формате site.ru без https://)

  • Страница, на которую будет переведен клиент после одобрения кредита* (обязательное для заполнения) - указывается ссылка куда будет направлен клиент после успешного оформления кредита, должно начинаться на https://

  • Страница, на которую будет переведен клиент в случае отказа в кредите* (обязательное для заполнения) - указывается ссылка куда будет направлен клиент если будет отказано в кредите, должно начинаться на https://

  • Поля раздела "Оплаты" следует оставить заполненными значениями по умолчанию.

Bitrix24_Mandarin

# Ограничения

На закладке "Ограничения" для платёжной системы Mandarin (Физическое лицо) тип плательщика "Физическое лицо" будет установлен автоматически.

# GetCourse

Как настроить рассрочку и приём платежей через Mandarin в GetCourse

# Вход в систему GetCourse

  • Зайдите в аккаунт GetCourse.
  • Выберите раздел «Сайт» → «Страницы».
  • Выберите пункт «Системные страницы» → «Оплата заказа».

GetCourse_system_pages

# Добавление стилей

Выберите пункт «Страница» и вставьте следующий код в блок «Теги для блока HEAD»: GetCourse_system_pages

<script type="text/javascript">
    // Настройки для клиентов
    const mandarin_CLIENT_SETTINGS = {
        mandarinMerchantId: "*",
        mandarinClientId: "*",
        token: "*",
        successReturnURL: "*",
        failReturnURL: "*"
    };
</script>
<link rel="stylesheet" href="https://tools.mandarinpay.com/proxy/mandarin_getcourse.css" />

Обратите внимание!

При вставке кода в блок «Теги для блока HEAD», необходимо убрать галочку "Автоматически исправлять типографику", затем вставить код с заполненными параметрами и сохранить его.

*Ваши данные, которые нужно вставить в параметры CLIENT_SETTINGS и сохранить страницу:

Settings Description
mandarinClientId ID вашего личного кабинета в mandarin, инструкция (opens new window) как его найти.
mandarinMerchantId ID вашего мерчанта, инструкция (opens new window) как его найти.
token Токен для совершения платежей. Получить через Службу поддержки (opens new window) Mandarin.
successReturnURL Адрес куда вернется покупатель после оплаты, например, https://mycompany.com/payment/access
failReturnURL Адрес куда будет перенаправлен покупатель в случае неудачной оплаты, например, https://mycompany.com/payment/fail

# Вставка кода для блока оплаты

  • Выберите на правой панели место, куда встроить кнопку оплаты и нажмите «Добавить блок».
  • Выберите HTML-блок из списка элементов.
  • Нажмите на добавленный элемент и уберите галочку «Автоматически исправлять типографику» справа в блоке настроек «Основные».
  • Нажмите дважды на добавленный элемент для редактирования.

Обратите внимание!

Вставлять код необходимо в режиме ввода кода. Для этого необходимо переключить редактор, нажав на символ <>. Уже добавленный блок нельзя редактировать, если необходимо внести изменения, то нужно удалить блок полностью и заново вставить.

GetCourse_system_pages

# Вставьте следующий код в случае если подключаете рассрочку:

 <div class="mandarin-payments-container">
  <table>
    <tbody>
      <tr>
        <td style="text-align: left;">
          <img alt="Банковская карта" src="https://tools.mandarinpay.com/proxy/Mandarin_logo_main_red.svg" title="Банковская карта" width="200" height="100">
        </td>
        <td>
          <button id="mandarin_installmentPaymentBtn" class="btn btn-info mandarin-pay-button">Купить в рассрочку</button>
        </td>
      </tr>
    </tbody>
  </table>
</div>
<div id="mandarin_installmentPopup" class="mandarin-popup">
  <div class="mandarin-popup-content" style="width: 350px;">
    <span class="mandarin-close-btn">×</span>
    <h2 style="margin-top: 10px;">Оплата в рассрочку</h2>
    <label style="margin-top: 40px;" for="mandarin_installmentPeriod">Выберите срок рассрочки:</label>
    <div class="mandarin-select-wrapper">
      <select style="width: 250px;" id="mandarin_installmentPeriod">
        <option value="10">10 месяцев</option>
        <option value="12">12 месяцев</option>
        <option value="18">18 месяцев</option>
        <option value="24">24 месяца</option>
        <option value="36">36 месяцев</option>
      </select>
    </div>
    <button style="margin-top: 40px;" class="btn btn-info mandarin-pay-button" id="mandarin_confirmInstallment">Оформить рассрочку</button>
  </div>
</div>
<div id="emailPopup" class="mandarin-popup">
  <div id="email-popup" class="mandarin-popup-content">
      <span class="mandarin-close-btn">×</span>
      <h3>Email в GetCourse</h2>
      <input style="margin-top: 30px;" type="text" class="element-margin-top" id="popup-email-input" name="popup-email-input" required size="30" />
      <button style="margin-top: 30px;" id="mandarinSetButton" class="btn btn-info mandarin-pay-button">Оплатить</button>
  </div>
</div>
<div id="mandarin_spinnerWrapper" class="mandarin-popup">
  <div class="mandarin-popup-content">
    <div class="mandarin-spinner"></div>
  </div>
</div>

<script type="text/javascript">
  // Получение данных о продукте
  const mandarin_offerElement = document.querySelector(".deal-positions li[class^='offer-position-']");
  const mandarin_ProductId = mandarin_offerElement ? mandarin_offerElement.getAttribute("data-offer-id") : null;
  const mandarin_productNameElement = mandarin_offerElement ? mandarin_offerElement.querySelector(".position-actual-title") : null;
  const mandarin_ProductName = mandarin_productNameElement ? mandarin_productNameElement.innerText.trim() : null;
  
  // Получение id сделки из заголовка
  const mandarin_titleText = document.title;
  const mandarin_orderIdMatch = mandarin_titleText.match(/#(\d+)/);
  const mandarin_orderId = mandarin_orderIdMatch ? mandarin_orderIdMatch[1] : null;

  // Получение id заказа из адресной строки
  const mandarin_orderNumber = window.location.href.split('/')[7].split('?')[0]; 
  
  // Получение цены
  let mandarinTextPrice = $('p.deal-finish-price-title b').text().trim().replace(' ', '');
  let mandarin_price = 0;

  if(mandarinTextPrice.includes('$')) {
    mandarin_price = Number($('p.deal-finish-price-title b').text().trim().replace(' ', '').replace('$', '').replace(',', ''));
  }
  else {
    mandarin_price = parseInt($('p.deal-finish-price-title b').text().trim().replace(' ', ''));
  }

  const mandarin_orderAmount = parseInt($('div.xdget-dealInfo p').first().text().replace(/[^0-9]/g, ''));
  let mandarin_fullOrPartPrice = parseInt((new URL(location.href)).searchParams.get('paymentValue'));
  let mandarin_fullPriceIfPartPay = $('.page-full-block div div div div p').first().text().replace(/[^0-9]/g, '');
  const mandarin_isPartPayment = !!mandarin_fullOrPartPrice;
  let isMandarinInstallment = false;
  let mandarin_gcProductIds = $('.deal-positions li').map(function() {
      return $(this).attr('data-offer-id');
  }).get();

  
  // Получение email пользователя
  let mandarin_inputElement = document.querySelector('input[name="params[DATA]"]');
  let mandarin_emailValue = mandarin_inputElement && mandarin_inputElement.value;
  let mandarin_userEmail = null;

  if (mandarin_emailValue && mandarin_emailValue.startsWith('Email=')) {
    mandarin_userEmail = mandarin_emailValue.split('Email=')[1];
  }
  
  if (window.currentUser && window.currentUser.email) {
    mandarin_userEmail = window.currentUser.email;
  }
  
  if(!mandarin_userEmail) {
    mandarin_userEmail = $('.xdget-currentUserInfo')?.html()?.split('\n')[2].split('\t')[0];
  }
</script>
<script src="https://tools.mandarinpay.com/proxy/mandarin_getcourse_v3.js"></script>

# Если необходимо добавить прием платежей, то необходимо вставить следующий код:

<div class="mandarin-payments-container">
  <table>
    <tbody>
      <tr>
        <td style="text-align: left;">
          <img alt="Банковская карта" src="https://tools.mandarinpay.com/proxy/Mandarin_logo_main_red.svg" title="Банковская карта" width="200" height="100">
        </td>
        <td>
          <button id="mandarin_payOnlineBtn" class="btn btn-info mandarin-pay-button">Оплата картой</button>
        </td>
      </tr>
    </tbody>
  </table>
</div>
<div class="mandarin-text-made-card">Оплата картой, выпущенной банком в Российской Федерации</div>


<script type="text/javascript">
  // Получение данных о продукте
  const mandarin_offerElement = document.querySelector(".deal-positions li[class^='offer-position-']");
  const mandarin_ProductId = mandarin_offerElement ? mandarin_offerElement.getAttribute("data-offer-id") : null;
  const mandarin_productNameElement = mandarin_offerElement ? mandarin_offerElement.querySelector(".position-actual-title") : null;
  const mandarin_ProductName = mandarin_productNameElement ? mandarin_productNameElement.innerText.trim() : null;
  
  // Получение id сделки из заголовка
  const mandarin_titleText = document.title;
  const mandarin_orderIdMatch = mandarin_titleText.match(/#(\d+)/);
  const mandarin_orderId = mandarin_orderIdMatch ? mandarin_orderIdMatch[1] : null;

  // Получение id заказа из адресной строки
  const mandarin_orderNumber = window.location.href.split('/')[7].split('?')[0]; 
  
  // Получение цены
  let mandarinTextPrice = $('p.deal-finish-price-title b').text().trim().replace(' ', '');
  let mandarin_price = 0;

  if(mandarinTextPrice.includes('$')) {
    mandarin_price = Number($('p.deal-finish-price-title b').text().trim().replace(' ', '').replace('$', '').replace(',', ''));
  }
  else {
    mandarin_price = parseInt($('p.deal-finish-price-title b').text().trim().replace(' ', ''));
  }

  const mandarin_orderAmount = parseInt($('div.xdget-dealInfo p').first().text().replace(/[^0-9]/g, ''));
  let mandarin_fullOrPartPrice = parseInt((new URL(location.href)).searchParams.get('paymentValue'));
  let mandarin_fullPriceIfPartPay = $('.page-full-block div div div div p').first().text().replace(/[^0-9]/g, '');
  const mandarin_isPartPayment = !!mandarin_fullOrPartPrice;
  let isMandarinInstallment = false;
  let mandarin_gcProductIds = $('.deal-positions li').map(function() {
      return $(this).attr('data-offer-id');
  }).get();

  
  // Получение email пользователя
  let mandarin_inputElement = document.querySelector('input[name="params[DATA]"]');
  let mandarin_emailValue = mandarin_inputElement && mandarin_inputElement.value;
  let mandarin_userEmail = null;

  if (mandarin_emailValue && mandarin_emailValue.startsWith('Email=')) {
    mandarin_userEmail = mandarin_emailValue.split('Email=')[1];
  }
  
  if (window.currentUser && window.currentUser.email) {
    mandarin_userEmail = window.currentUser.email;
  }
  
  if(!mandarin_userEmail) {
    mandarin_userEmail = $('.xdget-currentUserInfo')?.html()?.split('\n')[2].split('\t')[0];
  }
</script>
<script src="https://tools.mandarinpay.com/proxy/mandarin_getcourse_v3.js"></script>

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

<div class="mandarin-payments-container">
  <table>
    <tbody>
      <tr>
        <td style="text-align: left;">
          <img alt="Банковская карта" src="https://tools.mandarinpay.com/proxy/Mandarin_logo_main_red.svg" title="Банковская карта" width="200" height="100">
        </td>
        <td>
          <button id="mandarin_payOnlineBtn" class="btn btn-info mandarin-pay-button">Оплата картой</button>
        </td>
      </tr>
    </tbody>
  </table>
</div>
<div class="mandarin-text-made-card">Оплата картой, выпущенной банком в Российской Федерации</div>

<div class="mandarin-payments-container">
  <table>
    <tbody>
      <tr>
        <td style="text-align: left;">
          <img alt="Банковская карта" src="https://tools.mandarinpay.com/proxy/Mandarin_logo_main_red.svg" title="Банковская карта" width="200" height="100">
        </td>
        <td>
          <button id="mandarin_installmentPaymentBtn" class="btn btn-info mandarin-pay-button">Купить в рассрочку</button>
        </td>
      </tr>
    </tbody>
  </table>
</div>
<div id="mandarin_installmentPopup" class="mandarin-popup">
  <div class="mandarin-popup-content" style="width: 350px;">
    <span class="mandarin-close-btn">×</span>
    <h2 style="margin-top: 10px;">Оплата в рассрочку</h2>
    <label style="margin-top: 40px;" for="mandarin_installmentPeriod">Выберите срок рассрочки:</label>
    <div class="mandarin-select-wrapper">
      <select style="width: 250px;" id="mandarin_installmentPeriod">
        <option value="10">10 месяцев</option>
        <option value="12">12 месяцев</option>
        <option value="18">18 месяцев</option>
        <option value="24">24 месяца</option>
        <option value="36">36 месяцев</option>
      </select>
    </div>
    <button style="margin-top: 40px;" class="btn btn-info mandarin-pay-button" id="mandarin_confirmInstallment">Оформить рассрочку</button>
  </div>
</div>
<div id="emailPopup" class="mandarin-popup">
  <div id="email-popup" class="mandarin-popup-content">
      <span class="mandarin-close-btn">×</span>
      <h3>Email в GetCourse</h2>
      <input style="margin-top: 30px;" type="text" class="element-margin-top" id="popup-email-input" name="popup-email-input" required size="30" />
      <button style="margin-top: 30px;" id="mandarinSetButton" class="btn btn-info mandarin-pay-button">Оплатить</button>
  </div>
</div>
<div id="mandarin_spinnerWrapper" class="mandarin-popup">
  <div class="mandarin-popup-content">
    <div class="mandarin-spinner"></div>
  </div>
</div>

<script type="text/javascript">
  // Получение данных о продукте
  const mandarin_offerElement = document.querySelector(".deal-positions li[class^='offer-position-']");
  const mandarin_ProductId = mandarin_offerElement ? mandarin_offerElement.getAttribute("data-offer-id") : null;
  const mandarin_productNameElement = mandarin_offerElement ? mandarin_offerElement.querySelector(".position-actual-title") : null;
  const mandarin_ProductName = mandarin_productNameElement ? mandarin_productNameElement.innerText.trim() : null;
  
  // Получение id сделки из заголовка
  const mandarin_titleText = document.title;
  const mandarin_orderIdMatch = mandarin_titleText.match(/#(\d+)/);
  const mandarin_orderId = mandarin_orderIdMatch ? mandarin_orderIdMatch[1] : null;

  // Получение id заказа из адресной строки
  const mandarin_orderNumber = window.location.href.split('/')[7].split('?')[0]; 
  
  // Получение цены
  let mandarinTextPrice = $('p.deal-finish-price-title b').text().trim().replace(' ', '');
  let mandarin_price = 0;

  if(mandarinTextPrice.includes('$')) {
    mandarin_price = Number($('p.deal-finish-price-title b').text().trim().replace(' ', '').replace('$', '').replace(',', ''));
  }
  else {
    mandarin_price = parseInt($('p.deal-finish-price-title b').text().trim().replace(' ', ''));
  }

  const mandarin_orderAmount = parseInt($('div.xdget-dealInfo p').first().text().replace(/[^0-9]/g, ''));
  let mandarin_fullOrPartPrice = parseInt((new URL(location.href)).searchParams.get('paymentValue'));
  let mandarin_fullPriceIfPartPay = $('.page-full-block div div div div p').first().text().replace(/[^0-9]/g, '');
  const mandarin_isPartPayment = !!mandarin_fullOrPartPrice;
  let isMandarinInstallment = false;
  let mandarin_gcProductIds = $('.deal-positions li').map(function() {
      return $(this).attr('data-offer-id');
  }).get();

  
  // Получение email пользователя
  let mandarin_inputElement = document.querySelector('input[name="params[DATA]"]');
  let mandarin_emailValue = mandarin_inputElement && mandarin_inputElement.value;
  let mandarin_userEmail = null;

  if (mandarin_emailValue && mandarin_emailValue.startsWith('Email=')) {
    mandarin_userEmail = mandarin_emailValue.split('Email=')[1];
  }
  
  if (window.currentUser && window.currentUser.email) {
    mandarin_userEmail = window.currentUser.email;
  }
  
  if(!mandarin_userEmail) {
    mandarin_userEmail = $('.xdget-currentUserInfo')?.html()?.split('\n')[2].split('\t')[0];
  }
</script>
<script src="https://tools.mandarinpay.com/proxy/mandarin_getcourse_v3.js"></script>

После этого нажмите на область вне блока и кликните на кнопку «Сохранить»

Обратите внимание!

Если на странице оплаты по каким-либо причинам поменяются теги для получения данных, их можно подкорректировать в блоках кода «Получение данных о продукте», «Получение ID заказа из заголовка», «Получение цены» или «Получение email пользователя». Так же в случае если кнопки оплаты/рассрочки не реагируют на нажатия, рекомендуется удалить блок с видом оплаты и повторно его добавить на страницу.

# Плагин 1С

# Инструкция по загрузке модуля

Необходимо загрузить расширение в базу клиента, для этого идём в раздел «Администрирование» - «Печатные формы, отчеты и обработки».

1c_Mandarin

Затем в пункт «Расширения»

1c_Mandarin

В открывшимся окне нажимаем «Добавить из файла» и указываем путь к файлу и нажимаем «Открыть».

Важно!

Нужно чтобы все вышли из базы прежде чем подгружать расширение!

1c_Mandarin

Дальше будет окно по применению расширения.

1c_Mandarin

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

Важно!

СНИМАЕМ ФЛАГ «Безопасный режим»!

1c_Mandarin

После успешного добавления и перезапуска появится Mandarin.

1c_Mandarin

# Добавление настройки магазинов в 1С

После успешного добавления расширения настраиваем модуль. Заходим в подсистему «Mandarin» - настройка с сервером Mandarin.

1c_Mandarin

Создаём новую настройку проекта. В идеале сколько площадок, столько же и настроек.

1c_Mandarin

Если много площадок, то для удобства пользователя нужно пройти в склад и установить настойку в конкретный склад. Для этого идём в подсистему «Справочник» - «Склады» и заходим в нужный склад.

1c_Mandarin

Выбираем настройку в складе

1c_Mandarin

Затем пробуем оплатить из 1С на номер карты физическому лицу. Заходим в подсистему «Покупки» - «Поступление (акты, накладные, УПД).

1c_Mandarin

Создаём новый документ.

Важно!

Кнопка выплаты на карту доступна только в товарах!

1c_Mandarin

Заполняем необходимые поля и нажимаем «Выплатить через Mandarin» или «Выплатить ПО СБП Mandarin».

  • «Выплатить через Mandarin» - выплата будет совершаться по номеру карты.
  • «Выплатить ПО СБП Mandarin» - выплата будет совершаться по номеру телефона через систему быстрых платежей - оператору/сотруднику нужно ввести номер телефона получателя, затем будет получен список банков, где нужно выбрать банк, в который необходимо отправить средства получателю и нажать отправить.

1c_Mandarin

Откроется окно выплаты через Mandarin.

Важно!

Чтобы поля были максимально заполнены, проверяйте, все ли поля заполнены в настройках обмена, в складе и в самом контрагенте!

1c_Mandarin

Информация об успешной и неуспешной операции запишется в журнал операций.

1c_Mandarin

Его можно найти в разделе «Mandarin» - «Журнал операций»

1c_Mandarin

# Загрузка выписки из системы MANDARIN

При успешном добавлении расширения в разделе «Банк и касса» - «Банковские выписки» появится кнопка «Загрузить из Mandarin»

1c_Mandarin

1c_Mandarin

При нажатии на неё открывается форма:

1c_Mandarin

Указываем организацию, банковский счет и контрагент комиссии, а также, путь к файлу скачанного из системы Mandarin и нажимает «Заполнить таблицу».

1c_Mandarin

Нажимаем «Создать Документы» после этого создадутся документы списания с расчетного счета, а так же общий документ комиссии по этим операциям.

# Salebot

Подробная инструкция как подключить платежную систему Mandarin к Salebot доступна по ссылке. (opens new window).

# Первый БИТ

# БИТ.Управление задолженностью

В CRM системе для взыскания задолженности «БИТ.Управление задолженностью» от компании Первый БИТ возможно подключить функционал, позволяющий повысить конверсию оплат по долговым обязательствам физических лиц.

Оставить заявку на демонстрацию возможностей интеграции здесь (opens new window)

Интеграция Mandarin и «БИТ.Управление задолженностью» позволяет:

  • Получать и фиксировать информацию об оплате в режиме онлайн;
  • Подключать автоплатёж к карте должника с наивысшей конверсией;
  • Отправлять прямую ссылку на оплату долга по email или sms;
  • Настраивать автосписания с карты по графику платежей.

Оператор в разговоре с должником согласует сумму, которую тот готов погасить. Затем направляет сообщение, ссылка с которого ведёт на форму оплаты. Произведённый платеж моментально отразится в ПО «БИТ.Управление задолженностью». Подключение автоплатежа к карте должника значительно ускорит взыскание и избавит взыскателя от лишних затрат на осуществление информирования посредством СМС, email и звонков.

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

# Что необходимо настроить до начала интеграции:

  1. Боевой аккаунт Mandarin;
  2. Программу БИТ.Управление задолженностью.

Для настройки системы обратитесь к специалисту отдела внедрения или к курирующему менеджеру в компании Первый БИТ.

Также возможна самостоятельная настройка, подробный процесс описан в инструкции от компании Первый БИТ по ссылке (opens new window).

# Skillspace

Если у Вас еще нет готового к работе сервиса приема платежей или рассрочек - оставьте заявку на подключение (opens new window) в Mandarin. Для подключения сервисов необходимо зарегистрироваться по ссылке (opens new window), процесс регистрации описан здесь (opens new window).

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

# Подключение приема платежей

Принимайте онлайн-платежи быстро, удобно и безопасно.

Если Ваш эквайринг уже готов к работе – осталось подключить его к Skillspace. Для этого войдите в аккаунт на Skillspace и перейдите в Настройки школы — Способы оплаты, нажмите Добавить другой способ оплаты, далее следуйте инструкции по ссылке (opens new window).

Если возникнут вопросы — задайте их техподдержке Mandarin (opens new window) или на почту hello@skillspace.ru, будем рады помочь!

# Подлючение рассрочек

На платформе есть возможность принимать оплаты в рассрочку через сервис рассрочек Mandarin. Каждую заявку одновременно рассматривают более 17 финансовых организаций, что гарантирует максимальную вероятность одобрения. Онлайн-оформление по СМС позволяет оформить рассрочку за считанные минуты.

Если Ваш сервис рассрочек уже готов к работе – осталось подключить его к Skillspace. Для этого войдите в аккаунт на Skillspace и перейдите в Настройки школы — Способы оплаты, нажмите Добавить другой способ оплаты, далее следуйте инструкции по ссылке (opens new window).

Если возникнут вопросы — задайте их техподдержке Mandarin (opens new window) или на почту hello@skillspace.ru, будем рады помочь!

# Tilda

# Настройка универсального платёжного модуля

В статье описан процесс настройки приёма платежей через платёжную систему Mandarin для любого сайта, созданного при помощи конструктора сайтов Tilda Publishing.

# Последовательность действий

В админке вашего сайта на Тильде перейдите в настройки:

Tilda_Mandarin

В левом меню выберите раздел "Платёжные системы":

Tilda_Mandarin

В списке платёжных сервисов выберите "Универсальная платёжная система".

Tilda_Mandarin

Tilda_Mandarin

В списке шаблонов универсальной платёжной системы найдите Mandarin.

Внесите:

  1. Логин - в поле внесите MerchantID - числовой идентификатор (opens new window) боевого проекта приема платежей в системе Mandarin.
  2. Секрет для подписи заказа - секретный ключ (opens new window) (Secret), необходимый для аутентификации запросов.
  3. URL для уведомлений - адрес отправки коллбэка (Callback url), на который Mandarin будет отправлять вам коллбэк с информацией об операциях.

Tilda_Mandarin

Заполните остальные поля - валюта, страна, режим налогообложения, язык виджета оплаты. При необходимости формировать чеки внесите данные для фискализации (поля "ЭЛЕКТРОННЫЕ ЧЕКИ (РФ)" и ФФД).

В поле URL СТРАНИЦЫ УСПЕХА укажите URL страницы, на которую будет перенаправлен пользователь в случае успешной оплаты.

В поле URL ОТКАЗА укажите URL страницы, на которую будет перенаправлен пользователь, если в процессе оплаты возникнут ошибки. Список часто встречающихся кодов ошибок.

В поле Заголовок укажите Mandarin.

Нажмите "Сохранить". На вкладке "Платежные системы" появится Mandarin в списке подключенных:

Tilda_Mandarin

На страницах с товарами подключите возможность оплаты, используя Сценарий продажи товара (opens new window) без выбора дополнительных параметров или продажу товара с выбором параметров (opens new window).

При добавлении блоков оплаты на любой странице вашего сайта будет доступна платежная система Mandarin:

Tilda_Mandarin

Важно!

Для корректной работы интеграции в настройках формы заказа нужно добавить блок Корзина ST100, с другими блоками интеграция не будет работать.
Также нужно настроить обязательность заполнения поля email.

# Diafan CMS

# Joomla

# CS-CART

# Magento

# PHP Shop

# Prestashop

# Simpla

# UMI.CMS

# Webasyst

# Wordpress

# Insales

Необходимо получить авторизационные данные в системе Mandarin.

Далее в Insales вам необходимо добавить новый способ оплаты: "Внешний способ оплаты".

В появившемся меню необходимо ввести:

  1. Значение MerchantID в качестве идентификатора магазина.
  2. Значение Secret в качестве пароля.
  3. Значение http://pay.mandarinbank.com/mandarin_proxy.php в качестве внешней ссылки.

Параметры MerchantID и Secret можно узнать в личном кабинете).

Затем нужно перейти по ссылке в личный кабинет (opens new window) и прописать в поле Callback url значение "URL для перехода при успешной оплате" из Insales.

Подробные инструкции в архиве (opens new window).

# RadicalMart

RadicalMart - это решение для создания и работы Интернет-магазина или продающего лендинга с учетом разных потребностей.

Плагин оплаты, интегрирующий платёжную систему Mandarin в ecom проекты под управлением RadicalMart:

Подробнее о платформе для создания интернет магазинов RadicalMart на официальном сайте (opens new window).