|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (50)
просмотр истории страницыВ статье описаны коды ошибок которые может вернуть биллинг при обращении на обработчики платёжных систем. |
В статье описана схема взаимодействия asr_fiscal с asr_billing и коды ошибок возвращаемые биллингом и обработчиками платёжных систем. |
|
h2. Схема взаимодействия asr_fiscal с asr_billing При обращении на обработчик платёжной системы, допустим http://169.254.14.44:1444/osmp.php, он передаёт данные в общий для всех платёжных систем интерфейс pay_work, откуда они отправляются в asr_billing для регистрации платежа. Получив ответ с кодом состояния операции от биллинга, pay_work обрабатывает его и возвращает в обработчик платёжной системы (в примере это osmp.php) где он может быть модифицирован - в зависимости от требований протокола. Ниже описаны возможные ответы биллинга обработчику pay_work и измененные коды для конкретных платежных систем. |
h2. asr_billing |
h3. общие |
h3. Общие для всех операций |
|
|| Ответ биллинга || Описание || |
| 51 - | Не указан параметр для поиска абонента | |
| 52 - | User is deleted | |
| 52 - | User or group is disabled | |
| 53 - | Абонент не найден | |
71 - неизвестный оператор 73 - Неизвестная команда |
| 71 | неизвестный оператор | | 73 | Неизвестная команда | |
| 99 - | act_pay error (неизвестная ошибка) | |
|
h3. сСоздание платежа ADD |
|
0 - Создан платеж |
|| Ответ биллинга || Описание || | 0 | Создан платеж | |
| 0 - | Платеж уже создан | |
|
h3. оОтмена платежа CANCEL |
|
0 - Проведено успешно |
|| Ответ биллинга || Описание || | 0 | Проведено успешно | |
| 102 - | Транзакции не существует | |
| 202 - | Транзакция уже отменена | |
|
h3. пПроверка платежа CHECK |
|
0 - SUCCESS |
|| Ответ биллинга || Описание || | 0 | SUCCESS | |
| 102 - | Транзакции не существует | |
|
h3. пПроведение платежа PAY |
|
0 - ACCEPTED |
|| Ответ биллинга || Описание || | 0 | ACCEPTED | |
| 20 - | Платеж уже проведен, возвращаем старые данные | |
| 20 += | Сумма дублирующего платежа не совпадает с оригиналом | |
| 20 += | Дата дублирующего платежа не совпадает с оригиналом | |
| 52 - | В платеже не указана сумма | |
| 81 - | Невозможно получить старые данные | |
h2. asr_fiscal |
h2. общие |
h3. Общие для всех платежных систем |
|
0 - коды биллинга 0, 20, 102 - OК 1 - код биллинга 30 - временная ошибка 4 - коды биллинга 50, 51 - неверный формат поиска абонента 5 - код биллинга 53 - абонент не найден 7 - код биллинга 52 - платежи не принимаются |
|| Ответ биллинга || Переопределяется || Описание || | 0, 20, 102 | 0 | OК | | 30 | 1 | Временная ошибка | | 50, 51 | 4 | Неверный формат поиска абонента | | 53 | 5 | Абонент не найден | | 52 | 7 | Платежи не принимаются | |
| 300 - | \- | No results from DB | |
|
{info}Обычно код из биллинга идёт в общий обработчик фискала, а после ещё в обработчик платежки{info} |
h3. ОСМП |
[Любые платежные системы использующие ОСМП протокол|http://docs.carbonsoft.ru/49087103] |
{code} case 0: if ($this->config['osmp']['show_abonent_fio'][0]) { $msg = 'Абонент найден. ' . $abonent_name; } else { $msg = 'OK'; } break; case 1: $msg = 'Временная ошибка. Повторите запрос позже'; break; case 4: $msg = 'Неверный формат идентификатора абонента'; break; case 5: $msg = 'Идентификатор абонента не найден (Ошиблись номером)'; break; case 7: $msg = 'Прием платежа запрещен провайдером'; break; case 8: $msg = 'Прием платежа запрещен по техническим причинам'; break; case 79: $msg = 'Счет абонента не активен'; break; case 90: $msg = 'Проведение платежа не окончено'; break; case 241: $msg = 'Сумма слишком мала'; break; case 242: $msg = 'Сумма слишком велика'; break; case 243: $msg = 'Невозможно проверить состояние счета'; break; default: $msg = 'Другая ошибка провайдера'; break; } {code} |
|
|| Ответ биллинга || Отправляемое описание || | 0 | В зависимости от [опции "Отображать ФИО абонента при платеже"|CarbonBilling:Платежные системы. Общее]: * Включена: Абонент найден. ФИО абонента * Выключена: OK | | 1 | Временная ошибка. Повторите запрос позже | | 4 | Неверный формат идентификатора абонента | | 5 | Идентификатор абонента не найден (Ошиблись номером) | | 7 | Прием платежа запрещен провайдером | | 8 | Прием платежа запрещен по техническим причинам | | 79 | Счет абонента не активен | | 90 | Проведение платежа не окончено | | 241 | Сумма слишком мала | | 242 | Сумма слишком велика | | 243 | Невозможно проверить состояние счета | | Прочее | Другая ошибка провайдера | h3. Сбербанк ОСМП |
[Сбербанк (ОСМП)|http://docs.carbonsoft.ru/50364716] |
{code} case 0: case 20: case 102: $msg = 'OK'; $obj['res'] = 0; break; case 30: $msg = 'Временная ошибка. Повторите запрос позже'; $obj['res'] = 1; break; case 50: case 51: $msg = 'Неверный формат идентификатора абонента'; $obj['res'] = 4; break; case 53: $msg = 'Идентификатор абонента не найден (Ошиблись номером)'; $obj['res'] = 5; break; case 52: $msg = 'Прием платежа запрещен провайдером'; $obj['res'] = 7; break; case 8: $msg = 'Прием платежа запрещен по техническим причинам'; break; case 79: $msg = 'Счет абонента не активен'; break; case 90: $msg = 'Проведение платежа не окончено'; break; case 241: $msg = 'Сумма слишком мала'; break; case 242: $msg = 'Сумма слишком велика'; break; case 243: $msg = 'Невозможно проверить состояние счета'; break; default: $msg = 'Другая ошибка провайдера'; break; } {code} |
|| Ответ биллинга || Переопределяется || Отправляемое описание || | 0, 20 | \- | OK | | 102 | 0 | OK | | 30 | 1 | Временная ошибка. Повторите запрос позже | | 50 | \- | \- | | 51 | 4 | Неверный формат идентификатора абонента | | 53 | 5 | Идентификатор абонента не найден (Ошиблись номером) | | 52 | 7 | Прием платежа запрещен провайдером | | 8 | \- | Прием платежа запрещен по техническим причинам | | 79 | \- | Счет абонента не активен | | 90 | \- | Проведение платежа не окончено | | 241 | \- | Сумма слишком мала | | 242 | \- | Сумма слишком велика | | 243 | \- | Невозможно проверить состояние счета | | Прочее | \- | Другая ошибка провайдера | |
|
А некоторые обработчики платежек сразу обрабатывают коды биллинга |
h3. QIWI QIWI сразу обрабатывает коды биллинга |
QIWI |
0 - OK 4 - какая-то другая ошибка из биллинга 3 - нет ответа от биллинга |
|| Ответ биллинга || Отправляемое описание || | 0 | OK | | 3 | Нет ответа от биллинга | | 4 | Какая-то другая ошибка из биллинга | |