В статье описана схема взаимодействия asr_fiscal с asr_billing и коды ошибок возвращаемые биллингом и обработчиками платёжных систем.
Схема взаимодействия asr_fiscal с asr_billing
При обращении на обработчик платёжной системы, допустим http://169.254.14.44:1444/osmp.php, он передаёт данные в общий для всех платёжных систем интерфейс pay_work, откуда они отправляются в asr_billing для регистрации платежа. Получив ответ с кодом состояния операции от биллинга, pay_work обрабатывает его и возвращает в обработчик платёжной системы (в примере это osmp.php) где он может быть модифицирован - в зависимости от требований протокола.
Ниже описаны возможные ответы биллинга обработчику pay_work и измененные коды для конкретных платежных систем.
asr_billing
Общие для всех операций
Ответ биллинга
Описание
51
Не указан параметр для поиска абонента
52
User is deleted
52
User or group is disabled
53
Абонент не найден
71
неизвестный оператор
73
Неизвестная команда
99
act_pay error (неизвестная ошибка)
Создание платежа ADD
Ответ биллинга
Описание
0
Создан платеж
0
Платеж уже создан
Отмена платежа CANCEL
Ответ биллинга
Описание
0
Проведено успешно
102
Транзакции не существует
202
Транзакция уже отменена
Проверка платежа CHECK
Ответ биллинга
Описание
0
SUCCESS
102
Транзакции не существует
Проведение платежа PAY
Ответ биллинга
Описание
0
ACCEPTED
20
Платеж уже проведен, возвращаем старые данные
20
Сумма дублирующего платежа не совпадает с оригиналом
20
Дата дублирующего платежа не совпадает с оригиналом