Но тут есть камни, особенно если препейд и система запущена в эксплуатацию. Если на баланс с высокой горы, то можно без опаски.
Теперь мое скромное предположение о наиболее простом пути.
В системе есть эмулятор звонков. Пишем скрипт который перебирает звонки, постит в форму номер, получает тариф, умножает на (длительность минус бесплатные секунды) и записывает изменения в БД (можно и в файл для начала).
Чуток сложнее - взять кусок кода PHP из эмулятора который использует RateEngine и долабать к нему кусок с перебором звонков и внесением изменений в БД с интерфейсом и жирной кнопкой "перетарификация".
Отдельное внимание при этом стоит обратить на бесплатные секунды, если таковые были. Эмулятор их не показывает. Придется их учитывать самому, поскольку есть отдельная таблица в которой хранится история использования бесплатных секунд по карднамберам. Именно эту таблицу и надо юзать при расчетах чтобы не изобретать велосипед.
Есть еще один способ - взять кусок кода который отрабатывает непосредственно перед записью ЦДР в БД - и применить. Но вопрос с бесплатными секундами все равно актуален.