Record to report: journals, month-end and year-end close
Post journals, reconcile banks, revalue foreign currency, run the close checklist, lock periods, close the year and produce the financial statements.
On this page
Process at a glance
- Post journalsAccountantJournal vouchers are approved and posted.
- Reconcile banksAccountantStatement lines are matched and the reconciliation is locked.
- Revalue foreign currencyAccountantUnrealised gains/losses posted as JV-FX-REVAL.
- Work the close checklistFinance team15 close tasks completed or force-closed with a note.
- Lock the periodControllerSoft- or hard-close stops posting to the period.
- Review reportsControllerTrial balance, P&L, balance sheet and cash flow.
- Close the yearControllerProfit moved to Retained Earnings; all periods locked.
#Purpose and scope
This chapter covers the finance cycle from recording journals to closing the year: journal vouchers, recurring journals, bank reconciliation, foreign-exchange revaluation, the close checklist, period and year locking, and the financial reports. Sub-ledger processes (purchases, sales, payroll) feed it and are covered in their own chapters.
#Before you start
- A fiscal year with periods covering the dates you post (see “Setting up BSuit”).
- Chart of accounts with an Equity group (for Retained Earnings), bank ledgers linked to banks, and FX gain/loss ledgers if you use foreign currencies.
- Record types JV and the payment/receipt types, with approval workflows where your policy needs them.
- Permission to create/edit the voucher types you use (record_type.JV.create, …).
#1. Record a journal voucher
- Open Transactions and choose the journal type.
- Enter the date, narration and at least two ledger lines. Debits must equal credits.
- Save. The voucher is a draft and gets its number from the record type.
- Choose Submit for approval if the type requires approval. It becomes pending approval and is routed to the workflow linked to the record type.
- After approval, choose Post. Posting runs the final checks (see below) and the voucher becomes posted.
| Status | Meaning | What you can do |
|---|---|---|
| Draft | Saved, not yet submitted | Edit, delete, submit, post (if no approval is required) |
| Pending approval | Waiting for an approver | Wait; approvers approve or reject |
| Approved | Approved, not yet in the ledger | Post |
| Posted | In the general ledger | Cancel (creates a posted reversal) |
| Cancelled | Void | Nothing |
#What is checked when you post
| Check | Message you may see |
|---|---|
| Approval, when the record type requires it | “Transaction requires approval before posting.” |
| Fund, when required | Fund is required |
| Open period and open fiscal year | “Fiscal period … is closed. Cannot post to this date.” / “… is soft-closed. Contact a finance manager to post.” |
| Budget | Blocked, or a budget-override approval is started |
| Duplicate supplier invoice (payables) | Duplicate invoice warning |
| Debits equal credits over all rows, including hidden ones | “Debit (x) and Credit (y) must balance.” |
#2. Recurring journals
- Open Recurring transactions and base a template on an existing voucher.
- Choose the frequency (daily, weekly, monthly, quarterly, yearly), start and end, lead days, optional escalation % and skip dates.
- Tick Auto-post if the generated vouchers should post automatically; otherwise they are created as drafts for review.
- Use Run now to generate the next occurrence immediately.
#3. Bank reconciliation
- Import the statement in Bank statement imports. The bank account must be linked to a GL ledger, and the same file cannot be imported twice.
- Match statement lines to posted transactions. Only posted, non-cancelled transactions can be matched.
- In Bank reconciliation, when every line is matched, choose Reconcile. The reconciliation records who reconciled it and when.
#4. Foreign-exchange revaluation
- Open FX revaluation and choose the revaluation date.
- Preview the open foreign-currency positions and the gain or loss for each.
- Run. BSuit reverses the previous revaluation automatically (JV-FX-REVAL-REV) and posts the new one (JV-FX-REVAL).
#5. The close checklist (Financial Close Cockpit)
Open Period close, pick the period and start the close. BSuit copies a fixed 15-task checklist into the run; assign owners (they are notified) and mark tasks done, blocked or not applicable.
| # | Group | Task | Auto-verified? |
|---|---|---|---|
| 1 | Sub-ledgers | Close Accounts Receivable sub-ledger | No |
| 2 | Sub-ledgers | Close Accounts Payable sub-ledger | No |
| 3 | Sub-ledgers | Inventory / stock cut-off and valuation | No |
| 4 | Sub-ledgers | Post and lock payroll | No |
| 5 | Reconciliations | Bank and cash reconciliation | No (deliberately manual) |
| 6 | Reconciliations | Reconcile AR sub-ledger to GL control | No |
| 7 | Reconciliations | Reconcile AP sub-ledger to GL control | No |
| 8 | Reconciliations | Intercompany reconciliation and elimination | Yes — when no intercompany entries are unmatched |
| 9 | Accruals | Post accruals and prepayments | No |
| 10 | Accruals | Run depreciation and amortisation | Yes — when a posted depreciation run exists |
| 11 | Accruals | FX revaluation of open balances | Yes — when a posted run falls in the period |
| 12 | Reporting | Review Trial Balance | No |
| 13 | Reporting | Prepare financial statements | No |
| 14 | Review | Management review of results | No |
| 15 | Review | Final sign-off and lock period | No |
#6. Lock the period
| Lock | Effect |
|---|---|
| Soft-close | Nobody can post to the period (“…is soft-closed. Contact a finance manager to post.”). There is currently no override for elevated users. |
| Hard-close | Nobody can post to the period; a snapshot of ledger balances is stored for fast reporting. |
| Closed fiscal year | Nobody can post anywhere in the year. |
#7. Close the fiscal year
- Make sure no drafts remain in the year. In Fiscal years choose Close.
- BSuit posts a year-end journal dated the last day of the year that moves all income and expense balances into Retained Earnings (creating the RETAINED-EARNINGS ledger under Equity if needed).
- Every period is hard-closed and the year is marked closed.
| Message | Meaning |
|---|---|
| “Cannot close fiscal year with {n} unposted voucher(s) (…). Post, cancel or reject them first.” | Finish or cancel those vouchers first. |
| “…no Equity ledger group exists to hold Retained Earnings…” | Create an Equity ledger group in the chart of accounts. |
#Reports to review
| Report | Use |
|---|---|
| Trial balance | Balances per ledger as of a date, rolled up by chart of accounts. Posted vouchers only. |
| Trial balance — 6 column | Opening, period movement and closing, each as debit/credit. |
| Profit and loss | Income and expense for a period (also comparative). |
| Balance sheet | From a balance-sheet template (also comparative). |
| Cash flow | Operating, investing and financing activities. |
| Budget vs actual | Variance by cost centre for a budget version. |
| Consolidation | Group view; balance sheet at closing rate, P&L at average rate, difference to CTA. |
#Who can do what
Posting, submitting and cancelling a voucher need the edit permission on its record type. Closing, reopening, archiving and restoring fiscal years and periods, and signing off or reopening period-close runs, need the Finance Manager role (or a superuser); anyone else gets “403 Forbidden”. The Finance Manager role holds view/create/edit on finance records and nine voucher types.
About this guide
- Status
- Partially reviewed
- Application
- BSuit ERP
- Audience
- Accountants, finance managers and controllers
- Owner
- BSuit documentation team
- Reviewer
- Editorial review pending
- Last verified
- 2026-09-25
- Checked against
- cb3691bbf
- Seen on a running system
- Not yet
- Help version
- 2026.0.0-preview
- Guide ID
erp:article/guide/record-to-report
Known limits: Written from a line-by-line read of the implementation (every statement traced to source). Not yet walked through end to end by a trainer on a running system.