Автоплатежи (рекуррентные платежи)

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (11)

просмотр истории страницы
{toc:maxLevel=4}

h1. Описание автоплатежей
{note}Если абонент вносил дополнительные средства вручную, и "последний" автоплатёж не произойдёт, то сообщения в аудите не будет: оно пишется только при проведении автоплатежа, когда до окончания срока токе остаётся 35 дней или менее{note}

h2. С какими платёжными системами можно настроить автоплатежи

h3. Uniteller
h3. Paymaster

Для настройки рекуррентных платежей, проведите настройку платежной системы [Paymaster|CarbonBilling:Paymaster], а [Paymaster|CarbonBilling:Paymaster] (обязательно указать "Ключ подписи SHA256:" в биллинге и со стороны Paymaster), так же в личном кабинете Paymaster включить возможность проведения рекуррентных платежей.

Шорткод для добавления настроек в личный кабинет:
h1. Как отключить автоплатеж

h2. Автоматический, по истечении действия токена

Он отключается автоматический по истечении токена (через 1 год после подключения). При попытке проведения автоплатежа по невалидному (устаревшему) токену идет отключение автоплатежа и запись в аудит, что он отключен по такой причине.

Если абонент просит отключить до истечения 1 года, [воспользуйтесь API|CarbonBilling:API REST v2.0]: очистите поле *autopay_pay_log_id* в модели *Abonents* по ID абонента.
h2. В карточке абонента

Если абонент просит отключить до истечения 1 года, в карточке абонента снимите соответствующую галочку и сохраните.

!PayMaster, автоплатеж в карточке абонета.png|border=0!

h2. Через API

[Воспользуйтесь API|CarbonBilling:API REST v2.0]: очистите поле *autopay_pay_log_id* в модели *Abonents* по ID абонента.

h1. Отладка

{code:title=Ключевая фраза для поиска} Отключение автоплатежа через оператора{code}

h3. Автоплатеж поставлен на паузу

{panel:title=Пример}
Автоплатеж поставлен на паузу.Платежная система вернула нефатальную ошибку: \{u'PaymasterError': u'\[invalid_token\] does not exist', u'Result': 604\}. Возможно необходима проверка настройки платежной системы
{panel}

{code:title=Ключевая фраза для поиска}Автоплатеж поставлен на паузу{code}

{note}Аудит может быть в [архиве|CarbonBilling:Настройка периода хранения исторических данных в базе], если не удалось найти запись - попробуйте указать более старую дату и повторить поиск, возможно автоплатёж в паузе больше месяца.{note}

h2. Поиск информации в логах

h3. PayMaster

Журнал обращений к PayMaster по автоплатежам:
{code}tail /app/asr_fiscal/var/log/paysystems/PaymasterAutopay.log{code}

Искать ошибки можно такой командой:
{code:title=Команда}grep -n RESPONSE.*error /app/asr_fiscal/var/log/paysystems/PaymasterAutopay.log -B20 | grep -E 'RESPONSE|Contract_number'{code}
{code:title=Пример вывода}1131832- [description] => Contract_number: BILL0001234
1131844: [RESPONSE] => {"status":"failure","error":"does not exist","error_code":"invalid_token"}
1131920- [description] => Contract_number: BILL0004567
1131932: [RESPONSE] => {"status":"failure","error":"does not exist","error_code":"invalid_token"}
{code}
В error_code написана ошибка, описание которой можно найти в документации PayMaster https://paymaster.ru/docs/ru/direct/#errors

h4. invalid_token

Например, выше на оба запроса платежа PayMaster отвечает "invalid_token", на что документация платёжной системы пишет:
{quote}access_token является недействительным, т.к. не совпадает с предоставленным токеном, токен истек или был отменен клиентом{quote}

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

h5. Решение

# Найдите когда платёж был подключен https://docs.carbonsoft.ru/pages/viewpage.action?pageId=65799222#Автоплатежи(рекуррентныеплатежи)-Подключениеавтоплатежа
# Если с момента подключения прошло больше года - скажите абоненту, что автоплатёж нужно подключить заново, так как он оформляется на один год, и это требование платёжной системы.

Если платёж был подключен менее года назад, тогда:
* скопируйте данные аудита
* скопируйте ошибку из лога вместе с командой, которой его искали
* составьте обращение на портале [HelpDesk|https://helpdesk.carbonsoft.ru/login.php]