Платежные системы. Не проходят платежи.

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

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

просмотр истории страницы

h3. Возможно какая-то ошибка в тексте ссылки (неверные символы и тд)

* Орфографические ошибки где-то в названии php:
{code}https://bestisp.ru:1443/ossssmp.php{code}
Ошибка в имени php-файла, правильно "*o{color:red}s{color}mp.php*" "*o{*}{color:red}{*}s{*}{color}{*}mp.php*"

* Проверить можно, в том числе и по логу web-сервера asr_fiscal:
{code}tail -f /app/asr_fiscal/var/log/httpd/access_log{code}

h3. Может не тот протокол (http вместо https или наоборот)?

* Неправильный протокол, http вместо https или наоборот:
{code}http://bestisp.ru:1443/osmp.php{code}
Здесь должен быть протокол *https*, так как используется защищенный порт _1443_
Был пропущен порт, указанный в [основных настройках платежных систем|CarbonBilling:Основные настройки платежных систем]


h1. Возможно запросы не проходят firewall

h3. Как проверить, в этом проблема или нет?

# Добавьте в [список разрешенных IP|CarbonBilling:Настройка сети для платежных систем] "весь интернет": подсеть 0.0.0.0/0
# Совершите платёж как обычно

Заведите адреса или подсети платёжных систем в список разрешенных.

{warning}Не забудьте убрать подсеть 0.0.0.0/0 из списка разрешенных когда закончите отладку\!{warning}

h2. Локализуем проблему
{info}Примечание: Порты могут быть другие, в зависимости от того, какие указаны у вас в настройках *[платежных систем|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=49087129]*.{info}

Если уверены, что адреса точно правильные, запустите tcpdump без указания порта, но с IP-адресами платежных систем. Допустим, адреса платежной системы 10.0.0.1 и 10.1.1.0/24, команда будет такой:
{code}tcpdump -nnei any host 10.0.0.1 or net 10.1.1.0/24{code}

h4. Как исправить?

В том же примере с [CarbonBilling:Тинькофф] - \- правилами DNAT.

Но попробуйте вернуться к самому первому пункту этой инструкции и убедитесь что правильно указали адрес обработчика.

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

h3. Проверяем доступность портов для платежных систем
Если возможно, сделайте скриншоты настроек *в личном кабинете платёжной системы* и приложите к заявке. Также ускорит решение заявки наличие логов:

h2. Проверка логов платежной системы

# Если есть трафик проверьте логи http сервера. Есть два лога, с ошибками:
И общий лог для всех соединений.
{code}/app/asr_fiscal/var/log/httpd/access_log{code}
Если не прошел конкретный платёж найдите его в логе по времени.
# Если данные о платеже есть в логе http сервера, проверьте лог обработчика используемой платежной системы (как правило называется подобно наименованию обработчика) и посмотрите, что в нем нет ошибок обработки платежей.
Логи платежных систем располагаются в папке:
{code}/app/asr_fiscal/var/log/{code}
{code}/app/asr_billing/var/log/django/system_api.log
/app/asr_billing/var/log/admin_web_server.log{code}
{note}Файлы журналов могут ротироваться каждые сутки и храниться в течениие 30 дней; если необходимо найти ошибку, произошедшую в недавнем прошлом, найдите соответствуюищй соответствующий архивный файл:
/app/asr_billing/var/log/*admin_web_server.log* - \- +актуальный+ файл
/app/asr_billing/var/log/*admin_web_server.log-20190218.gz* - \- +архивный+ файл{note}
Пример поиска ошибок в логе */app/asr_fiscal/var/log/api.log*:
{code}grep -i err /app/asr_fiscal/var/log/api.log | tail -n 2{code}
Настройки *ИДЕНТИФИЦИРОВАТЬ* позволяют выбрать, по каким параметрам все обработчики платежных систем ищут абонента. Рекомендуется оставить только один вариант, наилучшим будет *ИДЕНТИФИЦИРОВАТЬ ПОЛЬЗОВАТЕЛЯ ПО НОМЕРУ ДОГОВОРА*

h2. Стали повторяться номера платежей

Перестали проходить платежи через Робокассу. Сервис выдает ошибку: 40 (со стороны Робокассы).
Данная ошибка 40 возникает на стороне магазина. В момент формирования запроса на инициализацию оплаты биллинг передает в Robokassa значение InvId (уникальный номер платежа), которое уже использовалось прежде. Этот параметр должен принимать с каждой переадресацией в сервис ROBOKASSA уникальное значение. Ошибка показывает, что один из клиентов уже оплатил данный номер заказа ранее, а сейчас биллинг переадресует в Robokassa другого плательщика, выставляя ему тот же номер счета.
Проблема может возникнуть, если Вы переключили интеграцию Робокассы с другого биллинга на Carbon Billing.
Необходимо исправить начальное значение параметра InvId. Это может сделать техническая поддержка по запросу, следовательно, нужно создать заявку с описанием проблемы в Helpdesk.

{info} Платежные системы отправляющие данные в формате XML
Примеры: [Биллинговые системы, Центральная Касса, КиберПлат|CarbonBilling:Сбербанк. ООО Биллинговые системы, Центральная Касса, КиберПлат], [ОСМП|CarbonBilling:Инструкция по подключению ОСМП. Несколько операторов]

# В лог платежной системы пишутся параметры пришедшие на обработчик в виде XML
# ОСМП-подобные протоколы обязательно должны содержать account и act=pay/check {info}