Импорт банковского CSV
Обзор
Большинство банков позволяют скачать CSV-файл транзакций за любой период выписки. Вместо ручного ввода каждой строки в TimelyChurch вы можете загрузить этот файл и позволить системе разобрать его, сопоставить с вашими счетами и категориями и провести каждую строку как транзакцию. Каждая импортированная строка проходит через очередь проверки, чтобы человек всегда подтверждал, что попадает в книги, прежде чем окажется в главной книге.
Workflow Bank CSV Import разработан для казначеев, которые сверяют ежемесячно: скачать CSV банка, загрузить, проверить, принять. Большинство месяцев занимают всего несколько минут.
Где найти
Перейдите в Finances > Accounting > Transactions (в Simple mode эта вкладка называется Money In / Out). Нажмите маленькую стрелку на split-кнопке New Transaction, чтобы открыть меню, затем выберите Import from CSV. То же меню — где вы создаёте New Expense, New Income, New Transfer или New Journal Entry, и где экспортируете отфильтрованный список в CSV.
Если строки уже ожидают от предыдущей загрузки, вкладка Transactions в навигации бухгалтерии показывает янтарный счётчик с количеством строк, ожидающих проверки, и очередь проверки появляется inline вверху страницы Transactions.
Поддерживаемые форматы банков
TimelyChurch автоматически определяет формат файла по строке заголовка и применяет встроенный парсер. Распознаваемые форматы включают:
- Bank of America — стандартный CSV-экспорт расчётного счёта.
- CashApp — экспорт в стиле выписки с бизнес-счетов CashApp.
- PayPal и Stripe — экспорты активности платёжных процессоров.
Если формат вашего банка не определён автоматически, файл всё равно можно импортировать как generic CSV: вы подтверждаете или корректируете сопоставление столбцов сами на следующем шаге (см. «Процесс загрузки» ниже). Строки, которые нельзя чисто разобрать, пропускаются, а помеченные как возможные дубликаты выводятся в очередь проверки, чтобы вы могли подтвердить или исключить их.
Процесс загрузки
Выбор Import from CSV открывает трёхшаговое модальное окно:
- Шаг 1 — Upload File. Выберите bank account, которому принадлежит файл (в списке только счета типа Asset), и выберите CSV file для загрузки, затем нажмите Next: Map Columns.
- Шаг 2 — Map Columns. TimelyChurch читает файл, показывает detected source и превью первых строк, и предлагает сопоставление столбцов (date, description, amount, fee, payee/name, reference). Для распознанных банков это обычно верно как есть; для generic CSV подтвердите или скорректируйте, какой столбец соответствует каждому полю.
- Шаг 3 — Import. TimelyChurch запускает обнаружение дубликатов (см. ниже) и подготавливает каждую разобранную строку в статусе for review. Строки затем появляются в очереди проверки на странице Transactions.
Если вы загружаете файл, который уже был импортирован для этого счёта, на шаге 2 отображается янтарное предупреждение «This file was already imported» с датой оригинального импорта и количеством, и вы можете выбрать Import Anyway или отменить.
Очередь проверки
Очередь проверки — сердце процесса импорта. Каждая загруженная строка остаётся здесь, пока вы явно не примете или не исключите её — ничего не проводится в книгу автоматически.
Каждая строка в очереди показывает:
- Дату транзакции, описание и сумму, разобранные из CSV.
- Предлагаемую category (система пытается сопоставить по ключевым словам описания и вашим предыдущим категоризациям).
- Предлагаемого payee/donor, если описание совпадает с существующим получателем.
- Method (способ оплаты), который можно переопределить перед принятием.
- Любые duplicate warnings (см. следующий раздел).
Для каждой строки вы можете:
- Edit предлагаемую категорию, получателя, method или другие детали inline.
- Accept строку, что создаёт реальную транзакцию в книге.
- Exclude строку, если она не должна стать транзакцией (например, банковская комиссия, уже записанная вручную, или внутренний перевод, который вы обрабатываете иначе).
- Accept All строки без дубликатов одним кликом, или выбрать несколько строк и Apply category к ним массово перед принятием.
После принятия или исключения строка покидает список проверки. Вы можете возвращаться к очереди в нескольких сессиях — ничто не заставляет очистить её за один раз.
Запись возврата покупки (возврат денег от поставщика)
Иногда входящее поступление вовсе не доход — это ваши собственные деньги, которые возвращаются. Поставщик возвращает деньги за отменённое бронирование, Amazon кредитует возвращённый товар, конференция возвращает оплату за регистрацию. Вместо того чтобы ошибочно проводить это как доход (что раздуло бы итог по категории) или вводить вручную позже, вы можете классифицировать это прямо здесь, в очереди, как возврат и отправить его напрямую обратно на тот расход, откуда оно пришло.
Это применимо только к входящим поступлениям — зелёным строкам со знаком +. Установите Type этой строки в Refund for expense, и строка перестроится соответственно:
- Выберите расход для уменьшения. Поле категории заменяется выбором Expense to reduce, где перечислены только ваши категории расходов, с подсказкой «Which expense is this refunding?» (Какой расход это возвращает?). Выберите категорию, под которой была проведена исходная покупка. Зелёная вспомогательная заметка снизу подтверждает, что произойдёт: «Puts the money back against this expense — reduces net spend, not booked as income.» (Возвращает деньги в счёт этого расхода — уменьшает чистые расходы, не проводится как доход.)
- Укажите поставщика (необязательно). В столбце Payee/Donor поиск жертвователя заменяется необязательным выбором Vendor (who refunded you) (подсказка «e.g. Airbnb, Amazon…»). Указание поставщика переносится в проведённую транзакцию для ваших записей, но не требуется для принятия.
- Примите строку. TimelyChurch проводит её как контр-расход — расход с отрицательной суммой, проведённый по выбранной вами категории. Деньги возвращаются на баланс вашего банковского счёта, а чистые расходы по этой категории уменьшаются до того, что вы действительно заплатили.
Возврат, проведённый таким образом, не проводится как доход и не создаёт пожертвования — поступление относится обратно на исходный счёт расходов, ровно так, как QuickBooks обрабатывает возвратное поступление. Оно никогда не появляется в итогах пожертвований или в чьём-либо годовом отчёте. Accept categorized на странице Review all обрабатывает строки возврата так же, если у них установлена категория расхода.
Возврату нужна категория расхода. Поскольку возврат уменьшает расход, вы должны указать ему категорию расхода, прежде чем он будет проведён. Если она не задана, принятие блокируется сообщением «Select the expense category this refund applies to before accepting it.» (Выберите категорию расхода, к которой относится этот возврат, прежде чем принять его.) Если вы выберете категорию, которая не является расходом, оно блокируется сообщением «A refund must be categorized to an expense category — the one the purchase was recorded under.» (Возврат должен быть отнесён к категории расхода — той, под которой была записана покупка.)
Возвратом может быть только входящее поступление. Вариант Refund for expense появляется только на строках дохода. Если помеченная как возврат строка почему-то не является входящей, принятие блокируется сообщением «Only an incoming deposit can be recorded as a refund of a purchase.» (Как возврат покупки можно записать только входящее поступление.)
Закрытые годы защищены. Если дата возврата попадает в финансовый год, который вы уже закрыли через Year-End Close, он отклоняется сообщением «This transaction falls in a closed fiscal year and cannot be posted.» (Эта транзакция попадает в закрытый финансовый год и не может быть проведена.) — поэтому запоздалый возврат не может переоткрыть завершённые книги.
Переключение Type начинает выбор заново. Переключение строки в режим Refund for expense или из него меняет направление категории (доход ↔ расход), поэтому любая уже выбранная категория очищается, а вновь показанный выбор начинается пустым.
Это способ записать возврат от поставщика через банковский импорт. Если вы предпочитаете записать его напрямую от исходной покупки — вне процесса импорта — см. Запись возврата по расходу; оба пути дают один и тот же безопасный для денег контр-расход по исходной категории расхода.
Обнаружение дубликатов (4 уровня)
Банковские CSV часто перекрываются. Если вы загружаете выписки за июнь и июль, но они разделяют последние дни июня, вы ожидаете импортировать одни и те же транзакции дважды. TimelyChurch использует четыре уровня обнаружения дубликатов, чтобы автоматически ловить такие случаи.
Уровень 1: хеш CSV-файла
Каждый загруженный файл получает уникальный отпечаток, и этот отпечаток запоминается. Если вы загружаете тот же файл второй раз для того же счёта, TimelyChurch распознаёт его и предупреждает перед импортом — избавляя от создания десятков фантомных дубликатов.
Уровень 2: reference number или amount + date + description
Для каждой разобранной строки система проверяет, существует ли уже соответствующая транзакция:
- Tier 1 (высокая уверенность): Точное совпадение номера ссылки существующей транзакции (проверяется по всей церкви). Это ловит номера чеков и ID транзакций банка.
- Tier 2 (средняя уверенность): Совпадение той же суммы, той же даты и того же счёта с совпадающим описанием — для строк без номера ссылки.
Проверка смотрит и на уже проведённые транзакции, и на другие строки, всё ещё ожидающие в очереди проверки, поэтому вы не можете случайно принять одну и ту же строку дважды из двух разных загрузок.
Уровень 3: подтверждение при Accept
Когда вы принимаете строку, которую система пометила как вероятный дубликат, вам показывают существующую транзакцию, с которой она конфликтует. Вы можете либо подтвердить, что это действительно отдельная транзакция, и провести её, либо отменить и исключить строку.
Уровень 4: последняя страховка
Как последняя линия защиты, TimelyChurch обеспечивает окончательную гарантию того, что один и тот же номер ссылки не может быть проведён дважды для одного счёта. Даже если что-то проскользнуло мимо предыдущих проверок, эта финальная защита отклоняет дубликат прежде, чем он попадёт в вашу книгу.
Лучшие практики
Сверяйте перед импортом. Банковская сверка по-прежнему является системой учёта для выявления ошибок. Проводите сверку каждый месяц, используя импортированные данные, а не как замену ей.
Внимательно проверяйте категории при первых импортах. Подсказчик категорий учится на ваших предыдущих категоризациях. Первый месяц или два импортов может потребовать больше ручных исправлений категорий; позже месяцы заметно ускоряются по мере улучшения подсказок.
Исключайте, не удаляйте. Если строка не должна проводиться, нажмите Exclude, а не игнорируйте её. Исключённые строки запоминаются, поэтому повторная загрузка перекрывающегося файла не выведет их снова.
Привязывайте импорты к одному счёту. Каждая загрузка привязана к одному банковскому счёту. Если у вас несколько расчётных счетов, делайте отдельную загрузку на счёт. Это сохраняет чистоту обнаружения дубликатов и сверки.
Устранение неполадок
«This file was already imported» — хеш CSV-файла совпадает с предыдущей загрузкой для этого счёта. Либо вы загрузили его дважды, либо банк экспортировал тот же диапазон дат. Просмотрите существующий импорт, затем выберите Import Anyway только если уверены, что строки новые.
Флаг «Possible duplicate» на строке — система нашла транзакцию с тем же reference number или с той же суммой, датой и описанием. Сравните с существующей транзакцией; если они действительно одна и та же, исключите строку. Если они случайно идентичны (редко), подтвердите и примите.
Строки не разбираются без очевидной ошибки — ваш банк мог изменить формат CSV, поэтому автоопределение перешло на generic import. Откройте CSV в таблице, подтвердите строку заголовка и на шаге 2 сопоставьте столбцы вручную — или повторно экспортируйте из банка в стандартном формате.