Back to Documentation

Accounting

Draft

Chart of accounts, journal entries, general ledger, financial reports, tax rates, assets, and banking.

Goal

Explain the core accounting features in ICONK OS: chart of accounts, journal entries, general ledger, financial reports, tax rates, assets, and banking.

Who This Guide Is For

Accountants, bookkeepers, company owners, and anyone responsible for financial records and reporting.

What You Can Do

  • Set up and manage your chart of accounts
  • Create manual journal entries
  • View the general ledger
  • Generate financial reports (Profit & Loss, Balance Sheet, Cash Flow, Trial Balance)
  • Generate consolidated Trial Balance, Profit & Loss, and Balance Sheet reports
  • View AR (Accounts Receivable) and AP (Accounts Payable) aging reports
  • Configure tax rates
  • Manage fixed assets and depreciation
  • Set up bank accounts and upload bank statements
  • Manage exchange rates for multi-currency operations
  • Configure accounting basics, AP controls, and AP approval delegations from Settings -> Accounting
  • Post invoice credit notes for customer returns and corrections
  • Post customer refund settlements against invoice credit notes

What You Should Not Expect Yet

  • Consolidated Trial Balance and Balance Sheet can show likely intercompany balance suggestions for review. Users with report-generation access can convert the current suggestion into a balanced report-only elimination adjustment, or let the Consolidation Close Runs panel create current report-only intercompany eliminations before saving a Trial Balance or Balance Sheet close package. The system does not post elimination entries into company ledgers without an explicit user action or configured company default. Finance users with report generation plus journal approval permission can post one active adjustment from the adjustment list, or select Post included adjustments to ledger when closing to batch-post the adjustments saved in that close-run snapshot. Settings -> Accounting can preselect that close-run posting option for the company, but journal approval is still required. Consolidated P&L and Balance Sheet show report-only non-controlling-interest disclosure when a selected company is below 100 percent ownership. Consolidated Balance Sheet can also use a selected historical equity-rate date for foreign-currency equity accounts and present an automatic report-only CTA line for the resulting translation difference.
  • Additional native bank-feed providers beyond Plaid, Teller, and the generic HTTPS bank-feed bridge remain future work.
  • Some advanced report formatting and jurisdiction-specific tax templates may still need configuration or future enhancement.

Step 1: Chart of Accounts

The chart of accounts is the foundation of your accounting system. It organizes all your financial accounts into categories.

Viewing Your Chart of Accounts

  1. Go to AccountingChart of Accounts in the sidebar.
  2. You will see a list of all accounts organized by type (Assets, Liabilities, Equity, Income, Expenses).

Creating an Account

  1. Click Add Account (or similar action).
  2. Enter the account name, code, type, and an optional description.
  3. If the account is a sub-account, select a parent account.
  4. Save the account.

Editing or Deleting an Account

  • You can edit an account's name, code, or description.
  • You can delete an account that has no transactions. Accounts with existing entries cannot be deleted.

Account Detail

Click on any account to see its detail page, which shows:

  • Account information
  • Recent journal entries affecting this account
  • Current balance

Step 2: Journal Entries

Journal entries record financial transactions in your general ledger.

Creating a Manual Journal Entry

  1. Go to AccountingJournal Entries in the sidebar.
  2. Click New Journal Entry.
  3. Enter a description for the entry.
  4. Add lines — each line specifies an account, a debit amount, and/or a credit amount.
  5. The total debits must equal the total credits. The system will not allow unbalanced entries.
  6. Save the entry.

How Journal Entries Work

  • Every journal entry creates a record in the general ledger.
  • The system validates that debits equal credits before saving.
  • Journal entries are posted through a centralized service that ensures consistency and prevents duplicate postings.

Viewing Journal Entries

  • Go to AccountingJournal to see all journal entries.
  • You can filter by date, account, or reference type.

Step 3: General Ledger

The general ledger shows all financial transactions across all accounts.

Viewing the Ledger

  1. Go to AccountingGeneral Ledger in the sidebar.
  2. You can filter by:
    • Date range
    • Specific account
    • Reference type (e.g., invoice, payment, journal entry)
  3. The ledger shows each transaction with the affected accounts, debit/credit amounts, and running balances.

Step 4: Financial Reports

ICONK OS provides standard financial reports based on your accounting data.

Available Reports

| Report | What It Shows | |--------|--------------| | Profit & Loss | Income minus expenses over a period | | Balance Sheet | Assets, liabilities, and equity at a point in time | | Cash Flow | Cash movements over a period | | Trial Balance | Summary of all account balances | | AR Aging | Outstanding customer invoices grouped by age | | AP Aging | Outstanding vendor bills grouped by age | | Consolidated Trial Balance | Multi-company debit and credit balances in one reporting currency | | Consolidated Profit & Loss | Multi-company income and expenses with ownership weighting | | Consolidated Balance Sheet | Multi-company assets, liabilities, equity, and current earnings | | Tax Summary | Tax collected and paid, grouped by tax rate |

Generating a Report

  1. Go to Reports in the sidebar (or Accounting → specific report).
  2. Select the date range and any other filters.
  3. Click Generate to view the report.
  4. Reports can typically be exported as CSV for further analysis.

Report Currency

Reports display amounts in your company's base currency. If your company uses multiple currencies, transactions are converted using the applicable exchange rates.

Consolidated reports can use a selected reporting currency, saved consolidation groups, ownership percentages, and report-only consolidation adjustments. Consolidated Trial Balance and Balance Sheet suggestion cards include Create Elimination when a likely intercompany offset is detected. Consolidated Profit & Loss can use average-rate translation for income and expenses, or closing-rate translation for review. Consolidated Balance Sheet includes an Equity Translation Policy control: closing rate keeps the older behavior, while historical date uses configured FX rates from that date for foreign-currency equity accounts and lets CTA balance the presentation. Consolidated Profit & Loss and Balance Sheet also show Non-Controlling Interest cards when a selected company is partially owned; these cards disclose the minority share while the report totals continue to use the selected proportional ownership percentage. The consolidated report pages also include Consolidation Close Runs so finance users can save a server-recomputed report snapshot, optionally auto-create current report-only intercompany eliminations for Trial Balance or Balance Sheet runs, load the saved snapshot later, close it, or void it for audit review. These adjustments, disclosures, policies, and runs affect consolidated reporting by default; posting an active adjustment to the base-company ledger is a separate explicit action that requires journal approval permission, either per adjustment or through the close-run Post included adjustments to ledger when closing option. The Accounting settings page can preselect this close-run option as a company default.


Step 5: Tax Rates

Tax rates define the taxes applied to invoices, expenses, and other transactions.

Viewing Tax Rates

  1. Go to SystemSettingsTax Rates in the sidebar.
  2. You will see all configured tax rates for your company.

Creating a Tax Rate

  1. Click Add Tax Rate.
  2. Enter the tax name, code, and rate percentage.
  3. Save the tax rate.

Using Tax Rates

Tax rates are applied when creating invoices and expenses. The system calculates the tax amount based on the rate and the line item total.

Tax Returns and Provider Credentials

  • Go to Accounting -> Tax Returns to generate return snapshots, preview filing payloads, record manual filing references, e-file through configured providers, and post/void tax payments.
  • Provider credentials are managed from Provider Credentials on the Tax Returns page. The page shows readiness and safe storage status only; it never shows saved secret values.
  • The provider list supports HMRC MTD, a generic HTTPS webhook bridge, and provider-specific HTTPS filing bridges for ZATCA, UAE FTA, Avalara, and TaxJar. Use bridge providers when a local tax authority connector or external filing service can receive ICONK OS filing payloads through a secure endpoint.
  • The e-filing template list includes tenant templates plus built-in presets for HMRC MTD VAT, ZATCA VAT bridge, UAE FTA VAT bridge, Avalara Sales Tax bridge, and TaxJar Sales Tax bridge.
  • Tax return detail shows a provider review summary for e-filing submissions when the provider returns status evidence, including normalized status, raw provider status, external reference, HTTP status, and provider message before the raw JSON response.
  • On tax return detail, Refresh Status asks the configured live provider bridge for the latest result on a non-terminal e-filing submission. The button is hidden for manual submissions, accepted/rejected/failed/cancelled submissions, or submissions without an external provider reference.
  • When a tax credential vault is configured, new provider credentials are stored in the encrypted local vault or an external vault reference. Existing plaintext credentials remain readable for backward compatibility.

Step 6: Fixed Assets

Fixed assets are long-term items your company owns, such as equipment, vehicles, or furniture.

Creating an Asset

  1. Go to AccountingAssets in the sidebar.
  2. Click New Asset.
  3. Enter the asset details: name, purchase price, purchase date, useful life, and depreciation method.
  4. Save the asset.

Depreciation

  • Assets can be depreciated over their useful life.
  • Depreciation entries are created automatically based on the configured method.
  • You can view the depreciation history for each asset.

Step 7: Banking

The banking module helps you track bank accounts and reconcile statements.

Setting Up a Bank Account

  1. Go to AccountingCash & Bank in the sidebar.
  2. Click Add Bank Account.
  3. Enter the bank account name and details.
  4. Save.

Uploading Bank Statements

  1. Go to your bank account page.
  2. Click Upload Statement.
  3. Upload your bank statement file.
  4. The system will parse the statement and show the transactions.

What You Can Do with Statements

  • View imported statement lines.
  • Match statement lines to existing transactions (reconciliation). Candidate matches show a confidence badge, match score, and short evidence reasons so users can review why the system suggested that journal entry before confirming.
  • When a trusted reconciliation rule is approved for candidate matching, Preview Rules can mark only HIGH-confidence candidate matches as ready. The preview shows the journal candidate, confidence, score, and reasons before users select the line and click Apply Rules; lower-confidence matches remain manual.
  • When bank connection credentials are configured, supported providers can import transactions automatically. Plaid supports hosted Link setup, Teller supports native account transaction sync, and a configured custom bank connector can connect tenant-managed bank aggregators or bank middleware. Manual statement upload remains available.
  • Cash & Bank is organized into four user-facing tabs: Bank Accounts, Import & Connect, Needs Review, and Rules. Start in Bank Accounts to add accounts or upload statements, then use Import & Connect only when you want automatic bank imports.
  • Cash & Bank shows bank import setup through normal finance actions: Connect a bank, Upload statement, and Connection health. Provider options that are not production-ready are hidden from the normal setup flow, and provider environment choices are handled by administrator/server setup rather than shown in the normal finance page.
  • The Check Security action verifies that saved bank connection access can be stored securely without showing raw credentials to the user.
  • Use Connection Health on Cash & Bank to see saved bank connections that need updated access, security setup, or a reconnect before the next import. From that panel, users with banking management access can update the connection, secure older saved access, or import transactions after updating access.
  • For a custom bank connector, Cash & Bank shows only safe connector status such as whether a connector host or shared secret is saved. It does not show the full saved connector URL or secret value after saving.
  • Use the Needs Review tab on Cash & Bank to see stale unmatched lines, failed imports, guided allocation-release failures, and trusted rule approvals that still need finance review.
  • Company admins can set bank auto-apply policy in Settings -> Accounting -> Basics. The policy can cap trusted rule batches by line count or total amount and can require a review note before Apply is allowed.
  • Users with banking management access can click Create task on an exception to assign a linked Workspace recovery task with priority, due date, assignee, and notes. This keeps the exception active while someone works on it, notifies the assignee in the topbar notification bell, shows the open task status on the exception card, and prevents duplicate open recovery tasks for the same exception.
  • Users with banking management access can also use Retry Failed Imports to choose which failed bank connections to retry, set the max retries for that scan, optionally enable Pause connection if retry fails, and click Create Follow-up Tasks to retry selected connection errors, bulk-create recovery tasks for unresolved exception items that do not already have an open task, and close linked recovery tasks whose bank exception has already been resolved or reviewed. Connection errors that recover during the retry do not create unnecessary tasks; errors skipped by policy or retry limit remain eligible for recovery tasks. When Pause connection if retry fails is enabled, a failed retry pauses that bank connection, shows it in the Failed Imports list, writes an Activity Log entry, and still creates/keeps the recovery task path for follow-up.
  • Users with banking management access can mark an exception reviewed with a note after it has been resolved or intentionally accepted. This writes an Activity Log entry and removes that item from the active exception queue without deleting the original bank line, feed error, rule, or payment-allocation exception history.

Step 8: Exchange Rates

If your company works with multiple currencies, you can manage exchange rates.

Viewing Exchange Rates

  1. Go to AccountingExchange Rates in the sidebar.
  2. You will see all configured exchange rates.

Adding an Exchange Rate

  1. Click Add Rate.
  2. Select the from currency and to currency.
  3. Enter the rate (e.g., 1 EGP = 0.0207 USD means the rate is 0.0207).
  4. Set the effective date.
  5. Save.

How Exchange Rates Are Used

  • When creating transactions in a foreign currency, the system uses the applicable exchange rate to convert to your base currency.
  • Exchange rates are used for financial reporting and journal entry posting.

Step 9: Invoice Credit Notes and Returns

Credit notes are used when a sent or paid customer invoice needs a return or correction. They do not edit the original invoice. Instead, they create a separate accounting document with its own audit trail.

When a credit note is posted:

  • Sales income is reduced.
  • Sales tax payable is reduced when tax exists.
  • Accounts receivable is credited.
  • Returned tracked inventory is added back to stock.
  • Foreign-currency credit notes use the original invoice currency and exchange rate, while ledger entries post in the company base currency.

When a posted credit note is refunded:

  • Accounts receivable is debited to clear the credit-note balance.
  • Cash or the selected bank account is credited.
  • If the refund exchange rate differs from the original credit-note rate, the system posts realized FX gain or loss.

Credit notes and invoice overpayments create reusable customer credit balances for linked customers. These balances can be applied to later invoices in the same document currency or refunded when they come from a credit note.


Step 10: Connect Bank Accounts to the Chart of Accounts

Each bank account in Cash & Bank represents a real account that receives or pays money. It must be linked to its matching Asset account in the Chart of Accounts, for example Main Bank linked to Bank - Main Account.

Add a new bank account

  1. Go to Cash & Bank.
  2. Add the bank account and select its Chart of Accounts Asset Account.
  3. Enter an opening balance only when you are setting up the starting position. The system posts it as a balanced opening entry against Owner's Equity.
  4. Save. The card shows both the original opening balance and the live Ledger Balance.

Repair an existing bank account

  1. Open Cash & Bank.
  2. On an account marked Link to Chart of Accounts, choose Link GL.
  3. Select the correct active Asset account and save.
  4. Future receipts, payments, refunds, tax payments, and reconciliation entries will use that account. Review any historical entries separately with your accountant; the link does not alter past journals automatically.

What happens when a customer pays an invoice

If a customer pays 250 into Main Bank, the accounting entry is:

  • Debit Main Bank: 250
  • Credit Accounts Receivable: 250

The bank amount increases. Accounts Receivable is credited because the customer now owes 250 less. This is the correct double-entry result.

Choose default accounts

In Settings > Accounting > Account Mapping, select the default accounts for cash, bank, receivables, payables, sales, tax, expenses, payroll, depreciation, and foreign-exchange gain/loss. The system checks that each choice has the correct type before it saves.


Known Limitations

  • Invoice credit notes, refund settlement/voiding, reusable customer credit wallets, applying credit to another invoice, cross-currency credit application, and the Customer Credit Statement page are implemented for sent/paid invoices.
  • Manual consolidation adjustments, average-rate P&L translation, historical equity-rate policy support, automatic report-only NCI disclosure, automatic report-only CTA presentation, likely intercompany balance suggestions, user-confirmed and close-run assisted suggestion-to-elimination adjustment creation, persisted consolidation close runs, explicit adjustment posting, close-run batch posting, and company-default close-run ledger posting are implemented for consolidated reports. Unattended background ledger elimination posting remains future work.
  • UNCERTAIN: Changing the company's base currency after setup is an accounting event and may have restrictions. Consult your accountant before making this change.
  • Some financial reports may need review for display consistency across different currency scenarios.
  • The system uses safe calculation methods for money. Advanced precision improvements are planned for a future update.

How to Get Help or Troubleshoot

  • If a journal entry will not save, check that debits equal credits. Unbalanced entries cannot be posted.
  • If a report shows unexpected values, check the date range and filters. Also verify that all relevant transactions have been posted.
  • If you cannot see the Accounting module, check your role permissions. See Roles and Permissions.
  • For general questions, see the FAQ.
Accounting | ICONK OS