Getting set up

Draft your Taxes with AI (per country, business type and legal form)

BusinessSensor can propose the taxes a business like yours actually files — VAT / GST at the local rate, the common withholding-tax (WHT) lines, PAYE / payroll withholdings, plus country-typical extras (Stamp Duty, Company Income Tax, Digital Service Tax, and so on).

The list is tailored to three things:

  • Country — which taxes exist and who collects them.
  • Business type (your sector, e.g. Hotel, Pharmacy) — adds the levies your sector files, such as hospitality consumption or tourism levies for hotels and restaurants.
  • Legal form — decides the income taxes. A limited company gets Company Income Tax (and, in Nigeria, Tertiary Education Tax); a sole proprietor or partnership doesn't, because its owners pay personal income tax; a non-profit / NGO is usually income-tax exempt but still deducts PAYE and WHT.

For each tax you import, three things happen at once:

  1. A Vendor is created for the tax authority (Federal Inland Revenue Service, HM Revenue & Customs, Kenya Revenue Authority, South African Revenue Service, …) — wired to the tax item's Tax Authority Vendor column so remittance targets are set from day one.
  2. Linked GL accounts are created:
    • Every tax gets a "{name} Payable" account (Tax Liabilities) — what you owe the authority. It is the tax item's Output Tax Account.
    • VAT / GST (and other sales taxes) also get a "{name} Recoverable" account (Tax Assets) — the VAT you reclaim on purchases. It is the tax item's Input Tax Account, so one VAT tax works on both sales and purchases.
    • Withholding tax, PAYE, stamp duty and levies get no Recoverable account: they are money you owe, never money you get back.
  3. The TaxItem row is created with rate, authority and accounts all filled in — ready to apply to invoices, purchases, or payroll straight away.

Before you start

  • You need Inventory Master access (INVENTORY_MASTER) — the same permission that governs the Items list where tax items live.
  • Set your Country and Business Type on Setup → Organization so they fill in automatically. Without a country the tool falls back to a generic list, which is rarely useful.
  • Nothing is created until you click Import. You can safely try different countries before deciding.

What the AI proposes

For a Nigerian limited company you'll typically see (a hotel would also see its hospitality levies; a sole proprietor would not see Company Income Tax):

Side Tax Rate Accounts created Authority
Output VAT 7.5% 7.5% Payable + Recoverable Federal Inland Revenue Service (FIRS)
Input WHT 5% - Rent 5.0% Payable Federal Inland Revenue Service (FIRS)
Input WHT 10% - Dividends 10.0% Payable Federal Inland Revenue Service (FIRS)
Input WHT 5% - Professional Services 5.0% Payable Federal Inland Revenue Service (FIRS)
Input PAYE var. Payable Lagos Internal Revenue Service (LIRS)
Input Stamp Duty var. Payable Federal Inland Revenue Service (FIRS)

Output means charged to customers; Input means withheld or owed by the business. VAT appears once — it covers both sales and purchases.

For UK: VAT 20%, PAYE, National Insurance, Corporation Tax. For Kenya: VAT 16%, WHT 5%, PAYE, TOT, Digital Service Tax. For South Africa: VAT 15%, PAYE, UIF, SDL, DWT.

Steps

  1. Go to Products & Services → Items.
  2. Click AI-suggest taxes in the header (top-right, next to New item).
  3. Business type and Country are pre-filled from Organization Profile. Change them here for a preview — nothing is saved.
  4. Pick your Legal form (Sole proprietor, Partnership, Limited company, Public limited company, Non-profit / NGO, Government / public body). It's optional, and it isn't saved: leave it blank for the general list.
  5. Click Suggest taxes. The AI drafts 5 – 15 taxes grouped by Output / Input.
  6. Review the grid:
    • Rename any tax (double-click a cell). Keep the rate in the name so parallel WHT rates don't collide.
    • Check the Rate % column: it is the percentage itself (7.5 for 7.5%). If the AI sends a fraction such as 0.075 for "VAT 7.5%", the import corrects it from the name, but check any tax without a percentage in its name.
    • Change the rate if your business qualifies for a different bracket.
    • Change the authority if the AI picked the federal body but you file at the state level (or vice-versa).
    • Hover the Why column for a one-line rationale.
    • Rows shown at half opacity + "Existing" are already on your tenant's Items list — pre-deselected.
    • Delete any row you don't file.
  7. When you're happy, click Import N selected. A toast reports: "N taxes created · M tax authorities added · K GL accounts created · …".
  8. Head to Items — filter by Type = TaxItem to see the fresh rows. Each has its authority Vendor, rate, and linked GL account wired.

Tips

  • Naming: keep the percentage IN the tax name (e.g. "WHT 5% - Rent"). Multiple WHT rates need distinct names or they can't both live on the tenant.
  • Same authority, many taxes is fine — the Vendor is get-or-create, so all Nigerian federal taxes share the one FIRS row.
  • Rates change. If your government revises a rate, update the TaxItem's Rate on the standard edit page — this tool never overwrites an existing tax on re-run.
  • Safe to re-run. Rows whose tax name already exists are silently skipped. Vendors + linked accounts are reused, not duplicated.

Common problems

"AI drafting isn't configured on this server (no OpenAI key)." Site is running without an OpenAI key. Ask your systems administrator. Until it's set, use New item → pick TaxItem and set the fields by hand.

The Suggest button is disabled. Pick a Country in the picker on this page, or set one on Organization Profile so it defaults.

"AccountType 'TaxLiabilities' is missing from this tenant's AccountType master". Extremely old tenant whose AccountType seeding never completed. Ask your systems administrator to run the tenant health check. Manual tax creation from the Items page still works.

A row failed to import. The reason is captured in the toast and server log. The row stays in the review grid for a retry. Authority Vendors + linked accounts created before the failure are harmless — the retry reuses them.

My VAT item from an earlier import has an empty Input Tax Account, or a rate like 0.08. Earlier versions of this tool created VAT as two items ("VAT 7.5% - Output" and "- Input") and could save the rate as a fraction. Open the item from Items, set Rate (in %) to the real percentage (7.5), and set Input Tax Account to your Input VAT Recoverable (Tax Assets) account so VAT on purchases posts. Re-running the import will not create a duplicate — it recognises the old names.

A withholding tax or PAYE item has a "Receivable" account. Also from an earlier version. Those taxes are owed to the authority, not reclaimable: on the item, clear Input Tax Account and set Output Tax Account to a Payable (Tax Liabilities) account.

The AI picked a rate my business doesn't pay. Edit the rate in the grid before importing, or delete the row and add it later through the standard TaxItem editor.

I imported the wrong set. Nothing is destructive. Use the standard Items list to delete unwanted TaxItems. The auto-created authority Vendors and GL accounts stay behind (harmless — no ledger entries yet) or can be deleted individually from Vendors and Chart of Accounts.

See it working on your own business

Start a 45-day free trial — no card needed — and follow this guide in your own practice company.