Интеграции с эквайрингами и платежными системами

Возможности и принципы работы

amoCRM позволяет пользователям включать специальный список – "Счета/покупки". Включение этого списка происходит
в разделе Настройки->Основные.
Вместе с включением этого списка, также создается список "Мои юр. лица", который используется для хранения информации о ваших юр. лицах. Данные из списка юр. лиц используется для поля Поставщик и для отображения на PayWall.

Мы рекомендуем также включать список "Товары", для полноценной работы счетов/покупок.

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

Мы предоставляем специальные возможности, чтобы интеграторы могли реализовать свой эквайринг, который пользователь сможет настроить для использования на PayWall.

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

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

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

Создание интеграции с поддержкой эквайрингов

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

В разделе "Моё приложение" выберите категорию "Счета и эквайринги", после этого у вас появится тумблер "Интеграция работает со страницей счета". Переключив этот тумблер у вас появится поле для загрузки логотипа эквайринга, указания ссылки для получения запроса на выставление счета, а также свойства для способа оплаты: Название способа оплаты (не более 50 символов), символьный код (не более 50 латинских букв, цифр и символа _), описание (не более 100 символов), логотип способа оплаты.

Поле Адрес имеет несколько особенностей:

  • Оно должно содержать адрес, в котором указаны маркеры :account_id и :invoice_id, например http://localhost/:account_id/:invoice_id. Важно отметить, что при передачи версии на публикацию мы проверим, чтобы ссылка была доступна любому пользователю.
  • Ссылка на оплату может меняться от версии к версии интеграции. Таким образом, вы можете опубликовать версию интеграции с реальной ссылкой, а при разработке новой версии интеграции снова использовать ссылку для разработки.
  • При переходе пользователем по ссылке, маркер :account_id будет заменен на ID аккаунта, :invoice_id на ID счета, :payment_method_code на символьный код выбранного способа оплаты.

Например, вы записали ссылку вот так: https://my.acquiring.best/:account_id/:invoice_id/:payment_method_code.

При оплате счёта #132 аккаунта #456 с помощью способа оплаты spb, клиент, при нажатии на способ оплаты – будет отправлен на адрес https://my.acquiring.best/456/123/spb

Аналогично произойдёт, если параметры будут записаны в query string:
https://my.acquiring.best/?account_id=:account_id&invoice_id=:invoice_id превратится в https://my.acquiring.best/?account_id=456&invoice_id=123

Одновременно в аккаунте может быть установлено несколько интеграций из категории "Банки и эквайринги", пользователь сам выбирает какие способы оплаты будут доступны на PayWall.

Важно
Начиная с релиза Весна 2023 мы рекомендуем интеграциям использователь системные поля Поставщик и Покупатель, а не создавать свои.
Также мы рекомендуем не удалять стандартные поля, а дополнять существующие, так как другие интеграции могут быть завязаны на них.
А интеграция должна быть готова к состоящию аккаунта, когда каких-то данных не хватает.

Требования к изображениям

Тип изображения Расширение Размер
Логотип эквайринга png, jpg, jpeg, svg Логотип эквайринга, отображается на PayWall над способами оплаты. Размер логотипа 110х30
Логотип способа оплаты png, jpg, jpeg, svg Логотип конкретного способа оплаты. Максимальный размер 120х120. Обязательные пропорции длины и ширины 1:1. Минимальный вес файла: 1кб

Что должно происходить при переходе по адресу для оплаты

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

Для получения данных о поставщике и покупателе важно использовать системные поля, типа supplier и payer.

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

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

Примеры ошибок, которые необходимо обрабатывать:

Аккаунт может быть недоступен

Это может произойти, если в аккаунте была подключена ваша интеграция, а затем, по какой-либо причине, интеграцию решили отключить. Если части клиентам уже была выслана ссылка на оплату, то они всё так же могут по ней перейти

В этом случае рекомендуется сообщить примерно следующее: "Счёт не найден, пожалуйста обратитесь к продавцу, который выставил вам счёт"

Счёт может не существовать

Это может произойти, после того, как клиенту выслали ссылка на PayWall, а счёт удалили
В этом случае рекомендуется сообщить примерно следующее: "Счёт не найден, пожалуйста обратитесь к продавцу, который выставил вам счёт"

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

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

В счёте могут отсутствовать товары (счёт со свободной ценой)

В этом случае можно использовать товар-заглушку
В качестве наименования товара можно использовать название и дату счёта, либо текст "Счёт #123 от …"

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