Ошибки могут возникать по разным причинам – но чаще всего это происходит при некорректном заполнении тех или иных данных. Мы рекомендуем тщательно проверять настройки, чтобы избежать подобных ситуаций. Давайте разберем типовые ошибки и причины, по которым они появляются.
Код ошибки 23
«Тестовый платёж не может быть создан. У магазина отсутствуют настройки тестовых параметров».
Это значит, что перед проведением тестового платежа вы не заполнили все необходимые данные в блоке «Параметры проведения тестовых платежей» закладки «Технические настройки».
Код ошибки 25
«Магазин не активирован».
Эта ошибка встречается нередко, и здесь могут быть 2 причины.
- Первая: это действительно так – и необходимо активировать магазин, а лишь потом выставлять счет.
- Вторая: вы неверно указали Идентификатор магазина в технических настройках на сайте. Посмотреть правильный можно в разделе «Мои магазины» Личного кабинета. Перейдите в закладку «Технические настройки» и найдите поле «Идентификатор магазина». Скопируйте идентификатор и введите его в настройках сайта.
Код ошибки 26
«Магазин не найден».
Это частая ошибка, связанная с неверными настройками. Вы некорректно указали идентификатор своего магазина. Посмотреть правильный можно в разделе «Мои магазины» Личного кабинета. Перейдите в закладку «Технические настройки» и найдите поле «Идентификатор магазина». Скопируйте идентификатор и введите его в настройках сайта.
Код ошибки 29
«Неверный параметрSignature»
Здесь причин может быть несколько, но все они связаны со скриптом, отвечающим за инициализацию оплаты (а конкретнее, его часть, которая формирует параметрSignatureпо формуле, состоящей из переменных). Эта ошибка встречается довольно часто, и вот 3 возможных причины:
- Первая: некорректный Идентификатор магазина (MerchantLogin);
- Вторая: неверный Пароль 1 (MerchantPass1);
- Третья: вы используете дополнительные параметры (shp_), которые добавлены в программный код кассы, но не занесены в формулу подсчета — или наоборот, в формуле подсчета они указаны, а в коде нет. Еслитаковыеиспользуются, передавайте их в алфавитном порядке – как в параметрах на оплату, так и в формуле подсчета Signature.
Важный момент! Если вы работаете в тестовом режиме, передавая параметр IsTest=1 или включая его галочкой в настройках модуля/бота, используйте только тестовую пару технических паролей (закладка «Технические настройки» карточки вашего магазина).
Код ошибки 30
«Неверный параметр счёта».
Проверьте как обязательные, так и необязательные параметры счета, которые вы передаете: что-то введено некорректно.
Код ошибки 31
«Неверная сумма платежа».
Такая ошибка может возникнуть при переадресации клиента на платежную страницу для выставления счета. Она означает, что вы не передаете нам сумму, на которую необходимо провести платеж, либо передаете сумму, равную нулю.
Код ошибки 33
«Время, отведённое на оплату счёта, истекло».
На разные способы проведения платежей есть ограничения по времени:
- Банковские карты и электронные платёжные системы (электронные деньги) –45 минут. Исключение составляет QIWI, где проведение платежа ограничено сутками (24 часа).
- Терминалы моментальной оплаты: «Элекснет» и прочие –двое суток (48 часов). Исключение, опять же, составляет QIWI, где проведение платежа ограничено сутками.
- Интернет– банки:«Альфа-клик», «ВТБ24» и другие – сутки (24 часа).
- Банкоматы–сутки (24 часа).
- Другие способы оплаты:мобильная коммерция–1 час,салоны «Связной» и «Евросеть»–двое суток (48 часов).
Код ошибки 34
«Услуга рекуррентных платежей не разрешена магазину».
Чтобы пользоваться этим функционалом, его необходимо согласовать и подключить – для этого можно отправить запрос из Личного кабинета. В противном случае платежи с подобной надстройкой работать не будут.
Код ошибки 35
«Неверные параметры для инициализации рекуррентного платежа».
Что-то не так с настройками рекуррентных платежей – проверьте их у себя на сайте, а при необходимости напишите нам в разделе «Поддержка» Личного кабинета.
Код ошибки 40
«Повторная оплата счета с тем же номером невозможна».
При формировании запроса на оплату вы передаете нам значение параметраInvId(номер заказа/счета), которое уже использовалось раньше. Этот параметр должен быть каждый раз уникальным. Другими словами, один из клиентов уже проводил оплату по такому номеру заказа ранее, а сейчас вы переадресуете к нам другого плательщика, выставляя ему тот же номер.
Код ошибки 41
«Ошибка на старте операции».
Это означает, что произошла ошибка, из-за которой платеж был отменен еще до старта. Попробуйте провести оплату еще раз. Если ошибка повторилась, напишите нам в разделе «Поддержка» вашего Личного кабинета.
Код ошибки 42
«Тестовый номер счета не может быть использован для проведения оплаты».
Нельзя использовать один и тот же номер заказа (InvId) в тестовом и в «боевом» режиме. Со временем тестовые номера удаляются, но в течение некоторого времени подобные попытки оплаты просто отменяются.
Код ошибки 60
«Ошибка конвертации валюты».
Это значит, что вы передаете недопустимое значение валюты в параметреOutSumCurrency: оно отличается отUSD (доллары), EUR (евро) и KZT (тенге).
Коды ошибок 20, 21, 22, 24, 27, 28, 32, 36, 37, 43, 500
«Внутренние ошибки сервиса».
Если вы видите один из этих кодов ошибки, напишите нам в разделе «Поддержка» вашего Личного кабинета. Мы обязательно поможем!
Код ошибки 29
«Неверный параметрSignature»
Здесь причин может быть несколько, но все они связаны со скриптом, отвечающим за инициализацию оплаты (а конкретнее, его часть, которая формирует параметрSignatureпо формуле, состоящей из переменных). Эта ошибка встречается довольно часто, и вот 3 возможных причины:
Первая: некорректный Идентификатор магазина (MerchantLogin);
Вторая: неверный Пароль 1 (MerchantPass1);
Третья: вы используете дополнительные параметры (shp_), которые добавлены в программный код кассы, но не занесены в формулу подсчета — или наоборот, в формуле подсчета они указаны, а в коде нет. Если таковые используются, передавайте их в алфавитном порядке – как в параметрах на оплату, так и в формуле подсчета Signature.
Чек-лист проверки и решения стандартных проблем
Воспользуйтесь списком, чтобы идентифицировать проблему и воспользуйтесь советом по ее устранению.
После отправки заявки, перед оплатой, вижу «Ошибка 34»
В вашем аккаунте Robokassa не подключены рекуррентные платежи. Напишите в техподдержку Robokassa запрос, на активацию рекуррентных платежей. Инструкции и шаблон письма есть в справке.
После отправки заявки, перед оплатой, вижу «Ошибка 29»
Вы ввели неверные данные идентификатора магазина пароль 1 пароль 2 от Robokassa в разделе «Настройки» в Ainox.
Часто бывает, что вводят пароли от тестового режима в боевой и наоборот. Отключите галку Тестовый режим в настройках Ainox и укажите данные от боевого режима.
Если по-прежнему не работает, перевыпустите оба боевых пароля в технических настройках магазина Robokassa и сохраните их в настройках Ainox.
Не проходит повторный платеж
Вероятнее всего, вы оплатили не банковской картой, либо ваш банк запрещает рекуррентные платежи.
Если причина не в этом, обратитесь в техническую поддержку Robokassa с указанием номера заявки в Ainox, с просьбой уточнить причины.
-
#1
Пытаюсь подключить робокассу. Вот код страницы с формой:
Код:
<?php
// Дополнительные пользовательские параметры
$shp_mail = urlencode($_POST['tests_indifferent_form_mail']);
$shp_name = urlencode($_POST['tests_indifferent_form_name']);
$shp_faculty = urlencode($_POST['tests_indifferent_form_faculty']);
$shp_curator = urlencode($_POST['tests_indifferent_form_curator']);
$shp_region = urlencode($_POST['forms_region']);
$shp_city = urlencode($_POST['forms_city']);
$shp_institution = urlencode($_POST['tests_indifferent_form_institution']);
$shp_awarded = urlencode($_POST['tests_indifferent_form_awarded']);
$shp_type = urlencode($_POST['tests_indifferent_form_type']);
$shp_title = urlencode($_POST['tests_indifferent_form_title']);
$shp_firm = urlencode($_POST['tests_indifferent_form_firm']);
$shp_place = urlencode($_POST['tests_indifferent_form_place']);
$shp_date = urlencode($_POST['tests_indifferent_form_date']);
// регистрационная информация (идентификатор магазина, пароль #1)
$mrh_login = "…";
$mrh_pass1 = "…";
// сумма заказа
$out_summ = "100";
// номер заказа
$inv_id = 0;
// тип товара
$shp_item = "2";
// формирование контрольной суммы
$str = $mrh_login.':'.$out_summ.':'.$inv_id.':'.$mrh_pass1.':Shp_awarded='.$shp_awarded.':Shp_city='.$shp_city.':Shp_curator='.$shp_curator.':Shp_date='.$shp_date.':Shp_faculty='.$shp_faculty.':Shp_firm='.$shp_firm.':Shp_institution='.$shp_institution.':Shp_item='.$shp_item.':Shp_mail='.$shp_mail.':Shp_name='.$shp_name.':Shp_region='.$shp_region.':Shp_title='.$shp_title.':Shp_type='.$shp_type.':Shp_place='.$shp_place;
$crc = md5($str);
?>
<div id="tests_indifferent_block_form">
<form action="[URL]https://merchant.roboxchange.com/Index.aspx[/URL]" method="POST" name="tests_indifferent_form" class="show_test tests_indifferent_form">
<div class="show_test tests_indifferent_form_text">Ваш e-mail</div>
<input type="email" name="tests_indifferent_form_mail" class="show_test tests_indifferent_form_input" required>
<div class="show_test tests_indifferent_form_text">Фамилия, имя, отчество</div>
<input type="text" name="tests_indifferent_form_name" class="show_test tests_indifferent_form_input" required>
<div class="show_test forms_text">Класс</div>
<input type="number" name="tests_indifferent_form_faculty" class="show_test forms_input">
<div class="show_test forms_text">ФИО куратора</div>
<input type="text" name="tests_indifferent_form_curator" class="show_test forms_input">
<div class="show_test forms_text">Регион (Республика, область, край)</div>
<input type="text" name="forms_region" class="show_test forms_input">
<div class="show_test forms_text">Город (село, поселок)</div>
<input type="text" name="forms_city" class="show_test forms_input">
<div class="show_test tests_indifferent_form_text">Образовательное учреждение</div>
<input type="text" name="tests_indifferent_form_institution" class="show_test tests_indifferent_form_input" required class="show_test">
<input type="text" name="tests_indifferent_form_awarded" value="Награждается" hidden class="show_test">
<input type="text" name="tests_indifferent_form_type" value="Блиц-олимпиада" hidden class="show_test">
<?php echo '<input type="text" name="tests_indifferent_form_title" value="'.$test_title_enter.'" hidden class="show_test">'; ?>
<input type="text" name="tests_indifferent_form_firm" value="ГРАНИ ПОЗНАНИЯ" hidden class="show_test">
<input type="text" name="tests_indifferent_form_place" id="tests_indifferent_form_place" value="" hidden class="show_test">
<input type="text" name="tests_indifferent_form_date" id="tests_indifferent_form_date" value="" hidden class="show_test">
<?php
echo '
<input type=hidden name="MrchLogin" value="'.$mrh_login.'">
<input type=hidden name="OutSum" value="'.$out_summ.'">
<input type=hidden name="InvId" value="'.$inv_id.'">
<input type=hidden name="SignatureValue" value="'.$crc.'">
<input type=hidden name="Shp_item" value="'.$shp_item.'">
';
?>
<input type="submit" name="tests_indifferent_form_submit" value="Отправить данные" class="show_test tests_indifferent_form_submit">
</form>
</div>
При отправке данных появляется ошибка: «Не получилось. Код: 29»
Без дополнительных пользовательских данных всё работает исправно, так что я попадаю на форму робокассы с выбором способа оплаты
Связался с техподдержкой. Они сказали, что проблема в формировании сигнатуры. Я так понял, что я накосячил с формированием контрольной суммы. Перепроверил. Вроде всё правильно
— все дополнительные данные имеют префикс shp_
— расположены в алфавитном порядке
— выполнена URL-кодировка
Не могу понять, что ещё нужно сделать
Последнее редактирование модератором: 22.08.2019
-
#2
При формирование контрольной суммы для некоторых, например для $inv_id так и написано, а для $shp_awarded написано Shp_awarded=’.$shp_awarded
Так и надо?
-
#4
А вот это Shp_type и это Shp_place отсортировано правильно?
-
#5
Действительно, есть ошибка в контрольной сумме. Поменял на:
$str = $mrh_login.’:’.$out_summ.’:’.$inv_id.’:’.$mrh_pass1.’:Shp_awarded=’.$shp_awarded.’:Shp_city=’.$shp_city.’:Shp_curator=’.$shp_curator.’:Shp_date=’.$shp_date.’:Shp_faculty=’.$shp_faculty.’:Shp_firm=’.$shp_firm.’:Shp_institution=’.$shp_institution.’:Shp_item=’.$shp_item.’:Shp_mail=’.$shp_mail.’:Shp_name=’.$shp_name.’:Shp_place=’.$shp_place.’:Shp_region=’.$shp_region.’:Shp_title=’.$shp_title.’:Shp_type=’.$shp_type;
Но это никак не помогло.
-
#6
Ещё можно попробовать убрать сначала все пользовательские данные, потом добавлять по одному параметру и после каждого добавления проверять
Робокасса – это сервис, который позволяет организациям и частным лицам принимать электронные платежи. Но как и любая другая система, иногда Робокасса может выдавать коды ошибок. Один из них – код ошибки 29.
Код ошибки 29 – это отказ банка-эмитента карты. Такая ошибка может произойти по разным причинам, например, на карте недостаточно средств, она заблокирована, истек срок действия карты и т.д. Также стоит отметить, что код ошибки 29 может появиться не только при оплате через Робокассу, но и при использовании других платежных систем.
Чтобы исправить данную ошибку, необходимо связаться с банком-эмитентом карты и уточнить причину отказа. В некоторых случаях помогает повторная попытка оплаты через некоторое время, когда причина отказа будет устранена.
Содержание
- Код ошибки 29 Робокасса: причины и решение
- Что такое код ошибки 29 Робокасса?
- Почему появляется код ошибки 29 Робокасса?
- Как исправить код ошибки 29 Робокасса?
- Вопрос-ответ
- Что означает код ошибки 29 Робокасса?
- Как исправить ошибку 29 Робокасса?
- Почему транзакция была отклонена?
Код ошибки 29 Робокасса: причины и решение
Код ошибки 29 при работе с сервисом Робокасса означает, что возникла проблема с доступом к платежной форме. Обычно это связано с некорректной настройкой платежного шлюза. В таком случае пользователь видит сообщение об ошибке на странице оплаты, и платеж не проходит.
Основные причины появления ошибки 29:
- Отсутствие или некорректная настройка шифрования (SSL-сертификата) сайта;
- Неправильно указанный или отсутствующий IP-адрес в настройках расчетного счета;
- Отсутствие или неправильная настройка параметров внешнего вида платежной страницы.
Чтобы исправить ошибку 29 Робокасса, рекомендуется проверить настройки платежного шлюза. Если необходимо, обновить SSL-сертификат и убедиться, что IP-адрес указан правильно. Также стоит проверить настройки внешнего вида платежной страницы и убедиться, что они корректны.
Шаг | Действие |
---|---|
1. | Проверить настройки SSL-сертификата сайта. |
2. | Проверить правильность указания IP-адреса в настройках расчетного счета. |
3. | Проверить настройки внешнего вида платежной страницы. |
Если после выполнения всех рекомендаций проблема не устраняется, необходимо обратиться в службу поддержки Робокасса для получения дополнительной помощи.
Что такое код ошибки 29 Робокасса?
Робокасса — это платёжная система, которая позволяет осуществлять онлайн-оплаты в Интернете. Однако иногда пользователи сталкиваются с ошибкой 29, которая мешает им осуществить платёж.
Код ошибки 29 свидетельствует о том, что произошла ошибка при обработке платежа. В большинстве случаев это связано с тем, что средства на карте были заблокированы или недостаточно для платежа. Также возможно, что проблема кроется в неправильно введённых данных карты или недостаточной авторизации пользователя.
Исправить ошибку 29 можно, определив причину её возникновения и решив проблему. Пользователи могут связаться с банком, который выпустил карту, чтобы устранить блокировку средств или обновить лимиты на платежи. Также стоит проверить правильность введённых данных карты и авторизации в платёжной системе. Если проблема все ещё не решена, лучше связаться с технической поддержкой Робокассы и получить консультацию специалиста.
Почему появляется код ошибки 29 Робокасса?
Код ошибки 29 Робокасса появляется, когда в процессе оплаты возникают проблемы с передачей данных от сайта продавца к платежному шлюзу Робокассы. Ошибка может быть связана с различными причинами, например, с неполадками на стороне платежной системы, неверно указанными данными покупателя, превышением лимита на деньги на счете покупателя и другими.
Кроме того, появление кода ошибки 29 может быть связано с проблемами на стороне сайта продавца, например, с неверной настройкой плагина Робокассы на сайте, неправильно настроенным URL-адресом или наличием ошибок в коде скрипта, обрабатывающего информацию о платеже.
Чтобы избежать появления кода ошибки 29 при работе с Робокассой, необходимо следить за правильностью указанных данных покупателя, включая его номер телефона, e-mail и адрес, а также регулярно проверять корректность настроек плагина Робокассы на сайте.
Как исправить код ошибки 29 Робокасса?
Код ошибки 29 Робокасса означает, что платеж не был произведен, так как платежная система не смогла обработать запрос на оплату. Если вы столкнулись с этой ошибкой, есть несколько шагов, которые помогут ее решить.
- Проверьте правильность введенных данных. В большинстве случаев, ошибка 29 происходит из-за того, что указанные реквизиты платежа некорректны. Убедитесь, что вы правильно указали номер счета, сумму платежа и другую необходимую информацию.
- Проверьте статус своего аккаунта в Робокассе. Если ваш аккаунт заблокирован или имеет неоплаченные счета, то запрос на оплату не будет выполнен.
- Свяжитесь с технической поддержкой Робокассы. Если вы уверены, что данные введены верно, а аккаунт находится в нормальном состоянии, обратитесь в службу поддержки Робокассы для поиска причины ошибки и ее устранения.
В целом, код ошибки 29 достаточно легко решаем. Просто убедитесь, что вы правильно ввели данные и проверьте свой аккаунт на наличие проблем. Если эти шаги не помогли, свяжитесь со службой поддержки Робокассы и получите квалифицированную помощь.
Вопрос-ответ
Что означает код ошибки 29 Робокасса?
Код ошибки 29 в Робокассе означает, что клиент не прошел аутентификацию по 3-D Secure. Это означает, что транзакция была отклонена банком-эмитентом. Она может быть отклонена по разным причинам, например, если карта была заблокирована, если не был введен правильный CVV/CVC-код или истек срок действия карты.
Как исправить ошибку 29 Робокасса?
Ошибка 29 связана с банком-эмитентом карты, поэтому исправить ее может только клиент. Если вы получили код ошибки 29, попробуйте использовать другую карту или свяжитесь с банком-эмитентом текущей карты, чтобы выяснить причину отклонения платежа. Также обратите внимание на вводимые данные и корректность заполнения формы оплаты.
Почему транзакция была отклонена?
Отклонение транзакции может быть связано с разными причинами: недостаточным балансом на карте, блокировкой карты, неправильно введенным CVV/CVC-кодом, истекшим сроком действия карты, ограничениями на суммы платежей и т.д. Чтобы узнать причину отклонения транзакции, свяжитесь с банком-эмитентом карты или провайдером платежей.