Внутренние коды ПО
Наше ПО при своей работе пользуется большим количеством кодов, зная которые вы можете наиболее гибко использовать все возможности и ПО PayPRO.
Коды платежных систем
Платёжные системы и процессинговые центры для ПО являются идентичными понятиями.
| Название | Кодовое имя | Числовой код |
|---|---|---|
| Сервера собственных провайдеров | OwnServer | -1 |
| Мониторинг PayPRO | PayPRO | 0 |
| Е-Порт | Eport | 1 |
| Процессинг PayPRO | PayPRO | 2 |
| КиберПлат | CyberPlat | 3 |
| ОСМП | OSMP | 4 |
| ПинПэй | PinPay | 5 |
| Киви | Qiwi | 6 |
| ДельтаПэй | DeltaPay | 7 |
| РегулПэй | RegulPay | 8 |
| Рапида | Rapida | 9 |
| КомПэй | ComePay | 10 |
| Модемы (USSD,SMS) | Modem | 11 .. 15 |
| АльфаПлат | AlphaPlat | 16 |
| Мкэш | Mcash | 18 |
| Яндекс | Yandex | 19 |
Кодовые имена используются при загрузке параметров из providers.ini, config.ini, записи информации в error.log и других местах, где требуется или допустимо использование строковых значений.
Числовые коды используются в базе данных терминала base.mdb, файле комиссии провайдеров config_comission.ini, передаче платежей на сервер и других местах, где недопустимо или нецелесообразно использование строковых имен платежных систем.
В базе данных base.mdb числовой код используется в таблице Pay в поле «protocol».
Коды статусов платежей и операций
Статусы платежей используются для определения какие дальнейшие действия требуются в отношении платежа.
Кроме платежей, те же статусы используются и для других операций, например, при отправке данных на сервер Диспетчерской и других внутренних операциях. Как правило в этом случае используются только 3 статуса: «10. Неотправлен», «1. Успешный», «2. Отклонен».
| Название | Числовой код | Комментарий |
|---|---|---|
| Недействительный | 0 | Платежи получают «Недействительный» статус после автоматического перепроведения отклоненных платежей. Представляют собой копии платежей на сервере, но не учитываются при расчетах. На терминале данный статус не используется. |
| Успешный | 1 | Платеж успешно прошел. Либо пакет успешно отправлен и получен положительный ответ (для других типов операций). |
| Отклонен | 2 | Платеж отклонен сервером. Либо пакет успешно отправлен и получен отрицательный ответ (для других типов операций). |
| Отменен | 3 | Во время оплаты пользователь нажал кнопку «Отмена». Например, если не достигнута установленная минимальная сумма платежа (такие платежи сохраняются для учета внесенных купюр при инкассации). |
| Начат (незавершен) | 4 | Платеж начат, но кнопка «Оплатить» или «Отмена» не была нажата. Например, при отключении питания терминала или сбое программного обеспечения терминала. |
| Неопределен | 5 | Терминал больше не занимается платежом. Оператор в Диспетчерской вручную занимается платежом и может поставить успешно или отклонено. |
| В ожидании | 6 | Защита от мошенничества. Ждём подтверждения оператора в Диспетчерской, что платёж можно проводить. |
| Сдача | 7 | Временный статус, появляется при возникновении сдачи. Как только ей воспользовались или наоборот сдача стала не востребованной - статус менятеся на другой (зависит от страны) |
| Возврат денег | 8 | Данный статус устанавливается через Диспетчерскую. |
| Неотправлен | 10 | Платеж успешно создан, но платеж не принят к обработке сервером ПС. Возможны ситуации: 1. Платеж еще не отправлялся на сервер. 2. Платеж отправлялся, но принимающий сервер был недоступен. 3. Платеж был отправлен, но принимающий сервер сообщил о невозможности его обработать в данный момент (требуется повторная отправка в таком же виде). |
| Действующий | 11 | Платеж был успешно отправлен в ПС, но ПС еще не сообщила конечного статуса операции («успешный» или «отклонен»). |
| Доп.проверка | 12 | Данный статус используется для уточнения статуса, если получен неоднозначный статус от сервера ПС (например, статус «Транзакция с таким номером уже существует» не говорит о том прошел ли платеж успешно или нет). В этом значении используется для КиберПлат. В PayPRO процессинге используется, чтобы обозначать платежи, которые уже поступили в процессинг, но ещё не поступили никуда дальше. Так как база данных у мониторинга и процессинга общая, статус 10 неотправлен в процессинге невозможен. |
| В ожидании (Отклонен по лимиту) | 13 | Платеж не отправлялся в ПС из-за ограничения суммы в периоде оплаты, пользователь перепроводит платеж через поиск. |
В базе данных base.mdb числовой код используется в таблице Pay в поле «status».
Алгоритм жизненного цикла программы:
1. Нажали «Приступить к оплате» - создался платеж со статусом 4 (Начат).
2. Внесли деньги (или не внесли) - статус не меняется (остается статус 4).
3. Завершают платеж.
3.1. Нажали «Отмена» - стал статус 3 (Отменен).
3.2. Нажали «Оплатить» - стал статус 10 (Неотправлен). В редких случаях сразу статус 1 (Успешно), например, для собственных провайдеров оффлайн.
4. В зависимости от ответа платежной системы статус меняется на статус 11 или 12 (Действующий), 1 (Успешно) или 2 (Отклонен).
X. Если выключился свет или произошел сбой системы, но платеж не завершали («Оплатить» или «Отмену» не жали), то при включении один последний платеж подгружается как статус 4. ПО его начнет анализировать:
X.1. Если сумма платежа равна 0, то ПО сделает статус 3 (Отменен).
X.2. Если сумма платежа больше 0, но меньше лимита, то ПО сделает статус 10 (неотправлен) и поставит в очередь на отправку.
X.3. Если сумма платежа больше лимита, то ПО оставит платеж в статусе 4 (начат и незавершен). В Диспетчерской такие платежи сделаем красными, чтобы они привлекали внимание.
Если в момент запуска последний платеж со статусом 4, то ПО передаст сообщение в Диспетчерскую с информацией о платеже. В сообщении будет указано, что ПО сделало с платежом: Отменило (изменило на статус 3), Восстановило (изменило на статус 10) или Проигнорировало (оставило статус 4).
Таким образом, статус 3 и 4 гарантируют попадание в инкассацию всех купюр, даже при нажатии кнопки «Отмена» или выключении света.
Коды типов провайдеров
Коды типов провайдеров используются при системной настройке провайдеров в файлах providers.ini, providers_user.ini и MyProviders\MyProviders.ini. За них отвечает параметр провайдера Тип (см. Таблицу 1. Общие параметры провайдеров).
В ходе работы программы по ним происходит сортировка для вывода провайдеров по группам (например, интернет провайдеры в отдельной группе, спутниковое ТВ - в отдельной и т.д.).
| Наименование группы | Номер |
|---|---|
| Мобильная связь | 1 |
| Стационарные телефоны | 2 |
| Интернет и IP-телефония | 3 |
| Электронные деньги | 4 |
| Платное ТВ | 5 |
| Развлечения | 6 |
| Косметика | 7 |
| Кредиты и услуги банков | 8 |
| ЖКХ | 9 |
| Транспорт | 10 |
| Online игры | 11 |
| Денежные переводы | 12 |
| Антивирусы | 13 |
| Госплатежи | 14 |
| Зарубежные провайдеры | 15 |
| Другие платежи | 20 |