Перейти к основному содержимому

4. Опции работы с API

Данное API допускает различные варианты использования, которые могут быть комбинированы между собой, в соответствии с потребностями ТСП.

4.1 По типу инициации платежа

В зависимости от того, какой тип интеграции предполагается на стороне ТСП, следует использовать один из трёх методов инициации платежа:

  • frontend-метод JS-API – открытие всплывающего платёжного виджета непосредственно на странице сайта
Этот метод наиболее универсальный и не содержит ограничений. В большинстве случаев вам будет удобнее использовать JS API платёжного виджета.
  • backend-метод create_payment_form – с переадресацией плательщика на URL платёжного шлюза Миксплат
Этот метод подходит вам, если параметры платежа определены только на стороне бэкенда и не передаются на фронтенд вашего сайта.
  • низкоуровневый метод create_payment – для межсерверного взаимодействия, без переадресации плательщика на форму Миксплат

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

Сертификат безопасности PCIDSS означает, что в ТСП должен проводиться на ежегодной основе аудит программного кода и процессов разработки с участием независимых лицензированных центров выдачи сертификатов, поддержка хостинга должна проводиться лицензированными организациями, в штате должны быть специалисты по безопасности. Если приём платежей на стороне ТСП не предполагает данных инвестиций - используйте JS-API, описаннный выше.

Способы оплаты "онлайн-банкинг" и "электронные кошельки" не могут быть использованы в методе create_payment, они доступны только в JS-API и методе create_payment_form

Допустимо использовать оба метода параллельно: например, create_payment для инициации платежей по мобильной коммерции и create_payment_form для приёма платежей по картам и онлайн-банкам, но это потребует программирования на стороне ТСП корректного разветвления сценариев для плательщика.

Все три метода инициации оплаты передадут статус исполнения платежа на скрипт ТСП в унифицированном формате посредством метода payment_status.

4.2 По способу оплаты

Платёжный шлюз Миксплат поддерживает различные варианты способов оплаты, приведённые в разделе 6.8. Вы можете их использовать в тестовом режиме test=1 сразу после регистрации проекта, но для запуска в эксплуатацию все способы оплаты требуют предварительного согласования в банках и операторах связи.

Вы можете произвести подключение доступных способов оплаты для вашего проекта через ЛК Миксплат в разделе меню "Настройки платёжных методов".

Конкретный способ оплаты может задаваться параметром payment_method (см. раздел 6.8) при создании платежа.

4.3 По этапности платежа

Данное разделение поддерживается только для способа оплаты card (банковские карты). В остальных способах всегда используется одноэтапный платёж. По умолчанию создается одноэтапный платеж.

  • Одноэтапная оплата выполняется одной командой (JS-API или create_payment_form), при которой происходит немедленное списание средств со счёта плательщика в пользу ТСП. Одноэтапный платёж не может быть отменён или изменён после его инициации. Списанные средства могут быть полностью или частично возвращены на карту покупателя при помощи команды "возврат платежа", метод refund_payment.

  • Двухэтапная оплата предусматривает последовательное использование двух отдельных методов API на предавторизацию средств и на их последующее списание. Предавторизация означает резервирование средств на банковской карте плательщика в размере суммы платежа, которыми он не сможет воспользоваться.
    Для предавторизации используется один из стандартных методов инициации платежа: JS-API или create_payment_form с параметром payment_scheme=double.
    Для завершения платежа используется метод подтверждения платежа confirm_payment (см. раздел 3.5.1)

Двухэтапная схема оплаты удобна в случаях, когда оплата производится до момента точного подтверждения наличия товаров или до проверки возможности оказать услугу. При отсутствии товара в момент платежа, ТСП может изменить заказ и подтвердить только часть авторизованной суммы (установив другое значение параметра amount в методе confirm_payment).

Обратите внимание: у ТСП есть 5 дней, чтобы подтвердить платёж методом confirm_payment и тем самым осуществить списание средств в свою пользу. Если это не будет сделано – платёж будет отменён, денежные средства разблокируются и вернутся плательщику.

В случае, если продажа товара или оказание услуги оказывается невозможным полностью, то резервирование незавершённого двухэтапного платежа можно отменить. Отмена платежа отличается от возврата тем, что отменённый платёж не будет фигурировать в выписках, денежные средства со счёта плательщика не списываются, резервирование разблокируется и денежные средства плательщику становятся доступны в полном объёме. Возврат платежа, напротив, подразумевает две встречные операции: сначала списание средств в пользу ТСП, затем выплата плательщику суммы возврата со счёта ТСП, зачисление средства занимает от 3 до 7 дней в зависимости от банка плательщика.

Отмена резервирования осуществляется командой cancel_payment. После выполнения команды cancel_payment зарезервированные деньги снова будут доступны плательщику.

Мы настойчиво не рекомендуем обрабатывать двухэтапные платежи вручную в связи с высоким риском пропустить максимальный срок подтверждения платежа, что приведёт к его автоматической отмене. В большинстве случаев целесообразно использовать одноэтапную оплату и частичные возвраты из ЛК при необходимости.

4.4 По периодичности

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

  • Разовая оплата подразумевает однократное списание средств с плательщика. В случае отсутствия необходимой суммы будет передан статус ошибки "недостаточно средств", и операция завершается.

  • Подписка используется для периодических сервисов, например, для благотворительных проектов, где с плательщика списываются регулярно определённые суммы. Параметры подписки задаются в настройках проекта в ЛК. Для того, чтобы создать платёж по подписке, в JS-API или create_payment_form следует передать recurrent_payment=1. Подписка будет подключена при условии настроенного профиля подписки в ЛК.

  • Рекуррентная оплата – первый платёж в обычном режиме и дальнейшая возможность безакцептного списания средств (метод create_recurrent_payment) в произвольный момент в будущем по инициативе ТСП. Пример использования – автопополнение лицевого счёта пользователя в ТСП при балансе близком к нулю. Профиль рекуррентов также устанавливается менджером Миксплат в настройках проекта.

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

4.5 По схеме получения статусов

Данные об успешности/неуспешности прохождении оплаты по заданному payment_id могут быть получены ТСП одним из двух способов:

  • нотификации о статусах платежей – передаются как запросы от Миксплат на скрипт-обработчик на стороне ТСП (метод payment_status), или

  • ТСП самостоятельно запрашивает статусы платежей у Миксплат (метод get_payment_status).

Вы можете параллельно использовать методы payment_status и get_payment_status, результаты будут идентичны.

Например, в случае, если обработчик на стороне ТСП был неисправен длительное время и статусы платежей были утеряны, вы можете получить статусы платежей повторно методом get_payment_status.

4.6 По схеме передачи чеков

54-ФЗ обязует все ТСП при продаже товаров и услуг передавать кассовые чеки в ОФД. Вы можете передавать в ОФД чеки:

  • самостоятельно
  • через Миксплат

В обоих случаях в запросах иницииации платежа (см. раздел 3.1) следует добавить JSON-параметр items, содержащий информацию о товарах и услугах. В соответствии с настройками в ЛК может быть настроена передача этих данных в ОФД и автоматическое формирование чека.

Общая схема работы онлайн-кассы через Миксплат:

  1. ТСП при создании платежа передаёт в Миксплат данные для чека: наименование товаров, количество, стоимость.
  2. Покупатель оплачивает товары через форму Миксплат.
  3. Миксплат отправляет информацию в облачный сервис онлайн-касс (АТОЛ, Orange Data, МодульКасса и др.) с идентификационными данными ТСП.
  4. Облачный сервис онлайн-касс отправляет данные в ОФД.
  5. ОФД регистрирует чек в ФНС и отправляет электронную версию покупателю на e-mail.
  6. Миксплат отправляет ТСП уведомление о проведённом платеже.

Что нужно сделать: Арендуйте ККТ (Контрольно-Кассовый Терминал) и получите идентификационные данные у одного из наших партнёров:

Настройте параметры вашей кассы в разделе "фискализация" в личном кабинете Миксплат. Начните передавать данные для формирования чека в объекте items (см. раздел 3.7). После этого передача фискальных данных будет происходить автоматически для всех платежей.