Оплата в приложении «Мобильный Юрист» (модуль M28): клиент заказывает проверку документа, переходит на страницу оплаты ЮKassa (карта, СБП и другие способы, которые вы включили), после оплаты заказ автоматически получает статус «в работе» и отметку «оплачен» в разделе «Мобильный Юрист».
1. Что нужно заранее
- Организация или ИП с расчётным счётом. Договор с ЮKassa заключает лицензиат CRM, деньги поступают на его счёт.
- Адрес CRM в интернете с HTTPS, например https://crm.ваш-домен.ru. Без него ЮKassa не сможет присылать уведомления, а клиенты не откроют приложение /app. Сертификат и ключ указываются в data\settings.env (HTTPS_CERT_FILE, HTTPS_KEY_FILE), порт для уведомлений ЮKassa - 443 или 8443.
- Страница, где видно услугу, цену, контакты и условия оказания услуги (оферту). ЮKassa проверяет её при подключении магазина. Подойдёт страница сайта со ссылкой на приложение.
- Решение по кассовым чекам (раздел 6): продажа услуг гражданам онлайн требует чека по 54-ФЗ.
2. Сначала тестовый магазин
Тестовый магазин позволяет проверить всю цепочку без договора и без настоящих денег.
- Откройте https://yookassa.ru/joinups?createTestShop=true и зарегистрируйтесь. Данные компании для тестового магазина не нужны.
- В личном кабинете тестового магазина: - Настройки → Магазин: скопируйте shopId (числовой идентификатор магазина); - Интеграция → Ключи API: выпустите секретный ключ. Тестовый ключ начинается с test_. Ключ показывается один раз: сразу сохраните его.
- Перейдите к разделу 4 и 5 этой инструкции, а затем проверьте оплату (раздел 8) тестовой картой 5555 5555 5555 4444, срок действия любой будущий, код CVC любой.
3. Настоящий магазин
- На yookassa.ru нажмите «Подключиться» и заполните анкету: ИНН, реквизиты, сайт или страница с услугой, описание услуг.
- Выберите способы оплаты (банковские карты, СБП и другие).
- Подпишите договор в личном кабинете и дождитесь проверки магазина. Сроки проверки указывает ЮKassa.
- После создания магазина возьмите его shopId (Настройки → Магазин) и выпустите боевой секретный ключ (Интеграция → Ключи API, начинается с live_).
4. Настройка CRM
Откройте файл data\settings.env в папке программы (например C:\KINDIGITAL-CRM\data\settings.env) и добавьте строки:
PUBLIC_URL=https://crm.ваш-домен.ru
YOOKASSA_SHOP_ID=123456
YOOKASSA_SECRET=live_...
- PUBLIC_URL - внешний адрес CRM: на него ЮKassa вернёт клиента после оплаты.
- Ключи читаются из файла без перезапуска программы. Если оплата не появилась в приложении через минуту, перезапустите программу.
- Секретный ключ даёт доступ к платежам магазина. Храните его только в settings.env, не пересылайте в мессенджерах. При подозрении на утечку выпустите новый ключ в ЮKassa и замените его в файле.
Стоимость проверки документа задаётся в CRM: Мобильный Юрист → Настройки → Стоимость проверки документа.
5. Уведомления об оплате
В личном кабинете ЮKassa откройте Интеграция → HTTP-уведомления:
- Адрес для уведомлений:
https://crm.ваш-домен.ru/api/v1/public/app/payments/yookassa - Включите событие payment.succeeded (платёж прошёл).
- Сохраните.
Получив уведомление, CRM не доверяет его содержимому, а сама запрашивает статус платежа у ЮKassa по секретному ключу. Подделать оплату отправкой ложного уведомления нельзя. Если уведомление не дошло, статус проверяется ещё раз, когда клиент открывает заказ в приложении.
Требования ЮKassa к адресу: протокол HTTPS, порт 443 или 8443, TLS 1.2 и выше.
6. Кассовые чеки (54-ФЗ)
При оплате услуг гражданами через интернет продавец обязан выдать кассовый чек. С ЮKassa это делается одним из способов:
- «Чеки от ЮKassa» - облачная касса ЮKassa, подключается в личном кабинете ЮKassa;
- своя онлайн-касса у партнёра ЮKassa (подключается в личном кабинете ЮKassa).
После подключения кассы в ЮKassa включите передачу данных для чека в CRM, добавив в data\settings.env:
YOOKASSA_RECEIPT=true
YOOKASSA_VAT_CODE=1
YOOKASSA_TAX_SYSTEM=2
| Параметр | Значения |
|---|---|
| YOOKASSA_VAT_CODE | ставка НДС: 1 - без НДС, 11 - 22%, 7 - 5%, 8 - 7%, 2 - 0% (полный список - в справочнике ЮKassa по 54-ФЗ) |
| YOOKASSA_TAX_SYSTEM | система налогообложения: 1 - общая, 2 - УСН доходы, 3 - УСН доходы минус расходы, 6 - патент. Указывайте, если в кассе зарегистрировано несколько систем |
В чек передаются: телефон клиента из приложения (и e-mail, если клиент указал его в профиле), наименование услуги, сумма, признак «услуга» и «полный расчёт». Ставку НДС и систему налогообложения согласуйте с бухгалтером.
7. Возвраты
Возврат денег клиенту оформляется в личном кабинете ЮKassa (раздел платежей). После возврата смените статус заказа в CRM вручную (Мобильный Юрист → заказ → статус «отменён»).
8. Проверка
- Откройте на телефоне
https://crm.ваш-домен.ru/app, войдите по номеру телефона. - Заказы → Обратиться к юристу → Проверка документа, приложите файл, нажмите «Перейти к оплате».
- Оплатите (в тестовом магазине - тестовой картой).
- После возврата в приложение заказ должен иметь статус «в работе», в CRM в разделе Мобильный Юрист - отметку «оплачен», у ответственного - задача.
9. Если что-то не работает
| Признак | Причина и решение |
|---|---|
| Кнопка «Отправить» вместо «Перейти к оплате» | В settings.env нет YOOKASSA_SHOP_ID или YOOKASSA_SECRET, или ошибка в имени параметра |
| Ошибка «ЮKassa: HTTP 401» | Неверная пара shopId и секретный ключ (например, тестовый ключ с боевым shopId) |
| Ошибка про чек (receipt) | Касса в ЮKassa не подключена, а YOOKASSA_RECEIPT=true; или у клиента нет телефона |
| Оплата прошла, заказ «ожидает оплаты» | Не настроены HTTP-уведомления или адрес недоступен из интернета. Откройте заказ в приложении: статус проверится заново |
| После оплаты клиент попадает не туда | Проверьте PUBLIC_URL |
Справочные материалы ЮKassa: https://yookassa.ru/developers, справочник параметров чека: https://yookassa.ru/developers/54fz/parameters-values, уведомления: https://yookassa.ru/developers/using-api/webhooks.