Автоматическая выгрузка платежей из CSV

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

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

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

* Вносить платежи нужно на вкладке "Сервис".
* Файлы с данными о платежах должны быть с расширением *.csv*.
* Подойдёт *любая* папка. На картинке выше "Абоненты" - просто пример. Платежи всё равно будут зачислены всем абонентам, которые есть в выгрузке, а не только из этой папки.
* Вносить платежи из CSV могут только администраторы [из группы root|CarbonBilling:Права доступа. Настройка прав доступа к биллингу. Настройка прав доступа к веб-интерфейсу].
# В папке */cfg/autocsv/* создаются конфигурации для автоматической выгрузки. Они должны иметь расширение \*.autocsv и права 755:
{code}
touch /cfg/autocsv/pochtarf.autocsv
chmod 755 /cfg/autocsv/pochtarf.autocsv
{code}
h2. Возможные ошибки

h5. Ошибка codec can't decode byte

При попытке загрузить данные зафиксирована ошибка в логе *worker*


Необходимо проверить, в какой кодировке на данный момент загружается файл csv и выставить соответствующие настройки в обработчике */app/asr_billing/cfg/autocsv/name.autocsv*

h5. Файл csv остаётся на месте

При загрузке платежей может возникнуть ситуация, когда платежи не загружаются, а файл *.csv* остаётся в каталоге */var/autocsv/*. Проблема может быть в слишком большом размере файла. Мы рекомендуем загружать файлы размером до 250 строк. Если файл более 250 строк, сделайте следующее:
# Уберите из настроек загрузки платежей параметры пропуска первой или последней строк, если они есть. Это нужно, чтобы случайно не пропустить платежи.
{code}
skip: 2 # Количество строк, которые нужно пропустить, по умолчанию - 0
skip_end: 2 # Количество строк, которые нужно пропустить в конце файла, по умолчанию - 0
{code}
# Удалите строки с комментариями и "шапку" таблицы из файла *.csv*, чтобы остались только данные платежей.
# Загрузите файл *.csv* на сервер биллинга по *ssh*. Например в каталог */tmp*.
# Перейдите в каталог */tmp*.
{code}
cd /tmp
{code}
# Разделите файл на несколько частей утилитой *split*. В примере конечные файлы будут названы *sber\_\_*, двойной символ "\_" используется для простоты последующей обработки.
{code}
split --numeric-suffixes --lines=250 sber.csv sber__
{code}
# Добавьте расширение *.csv* к именам файлов.
{code}
find . -name "sber__*" -exec mv {} {}.csv \;
{code}
# Переместите файлы по одному в каталог обработки, указанный в файле настроек. Например *sber*.
{code}
mv sber__00.csv --target-directory=/app/asr_billing/var/autocsv/sber/
{code}