In this article
- 1. Confirm the VAT obligation before configuring tax
- VAT registration checklist
- 2. Build the VAT tax matrix in Odoo
- 3. Configure KRA eTIMS by branch, not only by company
- eTIMS and OSCU checklist
- 4. Reconcile VAT before filing the monthly iTax return
- Monthly VAT close checklist
- 5. Apply withholding VAT only when the buyer is appointed
- Withholding VAT configuration checklist
- Frequently Asked Questions
- When is VAT registration compulsory in Kenya?
- When is the Kenya VAT return due?
- Can we claim VAT from any supplier invoice entered in Odoo?
- Does withholding VAT replace the supplier’s VAT payment?
A finance manager closes the month, opens the KRA iTax VAT return and finds that expected input VAT is missing from the prefilled figures. The supplier invoice is recorded in Odoo, but its eTIMS validation is missing. The result is more than a bookkeeping discrepancy: finance must investigate the tax evidence before filing.
A reliable Odoo VAT Kenya setup begins with the business’s KRA obligations, legal-entity and branch structure, and accurate product data. When Odoo and KRA eTIMS operate as one controlled workflow, finance teams can reduce rejected invoices, improve VAT visibility and resolve exceptions before they disrupt reporting.
This practical checklist is for Kenyan businesses using Odoo across sales, purchasing, inventory and finance. It draws on the KRA and official Odoo Kenya localisation requirements described in the source draft. Confirm current thresholds, rates, technical specifications and filing rules before relying on them.
1. Confirm the VAT obligation before configuring tax
First determine whether the company must register for VAT under KRA’s current taxable-supplies threshold and registration rules. The registration obligation must be addressed before Odoo is configured for production invoicing; software settings cannot replace an absent legal registration. Finance should document the review and complete any required application within the applicable statutory period.
Voluntary registration may also be appropriate, depending on the enterprise’s activities and commercial objectives. Where registration is not required, avoid applying VAT simply because Odoo supports it. Review the company’s taxable supplies regularly and retain a clear record of the tax decision.
VAT registration checklist
● Confirm whether the company meets the current KRA VAT registration threshold. Record the calculation, responsible finance owner and review date without relying on an outdated published figure.
● Apply for registration within the period required by KRA once the business becomes liable. Align the registration date with the invoice setup and internal compliance calendar.
● Add the VAT obligation to the company KRA PIN details in Odoo. A PIN without the right obligation will not support a compliant operating process.
● Record each legal entity separately in a multi-entity Odoo environment. One group tax policy does not replace entity-level KRA registration.
● Retain the registration evidence with the company’s tax records. It gives an auditor a clear basis for the taxes used in the ERP.
2. Build the VAT tax matrix in Odoo
Set up distinct Odoo taxes for standard-rated, zero-rated and exempt supplies, and a separate mechanism for withholding VAT where applicable. Correct tax mapping helps produce reliable invoices, defensible input-tax reports and cleaner monthly reconciliation.
| Supply type | Odoo configuration | Tax treatment | Control reason | | Standard-rated supply | Dedicated standard-rated sales and purchase tax | Apply the current standard VAT rate (source draft: 16%) | This is the standard VAT rate used for taxable supplies. | | Zero-rated supply | Dedicated zero-rated tax | Taxable at the applicable zero rate | It must remain distinct from exempt treatment for reporting and input-tax analysis. | | Exempt supply | Dedicated exempt category | No related input VAT deduction | Input VAT linked to exempt supplies is not deductible. | | Withholding VAT | Separate withholding tax and clearing account | Only for appointed agents and qualifying transactions | It is a collection mechanism, not a reduction of the supplier’s output VAT. | Review historical tax codes before production use. Retired or superseded rates should remain available for audit history, where needed, but should not be selectable on new invoices. Verify current KRA treatment before making any tax-rule changes.
Zero-rated and exempt supplies must not share one generic tax configuration. Both may display no VAT charged on an invoice, but they have different consequences for VAT reporting and the treatment of related input tax.
For example, a distributor might classify zero-rated and exempt sales under a single tax code to simplify invoice entry. The VAT report then loses the distinction finance needs to assess input-tax treatment and explain transactions to KRA. Separate tax rules from the outset support better reporting and reduce corrective postings later.
3. Configure KRA eTIMS by branch, not only by company
Each relevant legal entity and KRA branch should be mapped to the correct eTIMS configuration. Official Odoo Kenya localisation includes `l10n_ke`, `l10n_ke_reports` and `l10n_ke_edi_oscu` for localised accounting, reporting and the OSCU workflow. Confirm compatibility with the specific Odoo version and KRA environment before deployment.
Arrange the required integration credentials, registration and testing before issuing live invoices. A successful demonstration in a test environment does not establish that each production branch can transmit and reconcile invoices under its correct KRA identity.
eTIMS and OSCU checklist
1.Create the legal entity and each KRA branch in the Odoo company structure. This keeps tax reporting and invoice controls auditable in multi-branch operations.
2.Configure an Odoo OSCU for each KRA branch. Do not use one OSCU or one eTIMS invoice sequence across several branches.
3.Obtain the required Odoo integration tokens before production use. The integration should be tested before the branch begins live invoicing.
4.Complete the product master before any invoice or stock move. KRA-related product fields include cost, packaging unit and quantity, origin country, eTIMS product type, insurance status and UNSPSC category.
5.Register products and reconcile KRA invoice sequences separately by branch. A sequence issue in one branch should be visible without obscuring another branch’s transactions.
6.Test issuance, transmission, credit-note handling and failed transmission exceptions. A successful invoice screen in Odoo is not enough if the eTIMS transmission record is missing.
Product master data deserves early attention. Inventory teams may focus on stock codes and commercial descriptions, while compliant fiscal invoicing also depends on accurate tax and eTIMS attributes. Make data completeness a required step before products are released for invoicing or stock transactions.
Consider a retailer operating several KRA branches. If invoices from every branch use a single central configuration and sequence, finance may struggle to match sales activity to the proper branch records. Branch-specific configuration and reconciliation give management clearer visibility and make discrepancies easier to investigate.
4. Reconcile VAT before filing the monthly iTax return
Build the monthly VAT close around the current KRA iTax filing and payment deadline, including nil returns where applicable. Complete reconciliation early enough for operations and finance to resolve rejected or missing electronic invoices before submitting the return.
KRA prefilled VAT information draws on electronic invoice data. Treat the prefilled return as a control input to reconcile against Odoo, rather than as proof that all sales, purchases and input-tax claims are complete and correct.
Monthly VAT close checklist
● Lock the reporting period in Odoo after the agreed cut-off. This protects the audit trail while the return is being prepared.
● Reconcile Odoo output VAT by branch and tax category to the iTax prefilled VAT return. Differences often point to transmission, sequence or timing exceptions.
● Review input VAT invoice by invoice. KRA can reject input VAT not validated through TIMS or eTIMS, or without a customs import declaration.
● Confirm that each input claim relates to taxable business supplies and has valid support. A purchase posting alone is not sufficient evidence.
● File and pay through iTax by the 20th of the following month, including a nil return where required.
● Retain valid electronic tax invoices and other required evidence supporting business expenses. A purchase entry in Odoo is not, by itself, a substitute for compliant tax documentation.
Goods may be delivered and a vendor bill correctly posted in Odoo while the supporting electronic invoice remains unverified. Linking eTIMS exceptions to the accounting close helps finance identify unsupported claims, protect the audit trail and avoid rushed corrections at filing time.
5. Apply withholding VAT only when the buyer is appointed
Withholding VAT is not an optional deduction chosen by the purchaser. It applies where the buyer is a duly appointed KRA withholding VAT agent and the transaction meets the applicable rules. Configure the relevant withholding tax and a dedicated clearing account, then remit in the supplier’s PIN within the statutory time.
Review exclusions and transaction-specific treatment before withholding. The supplier remains responsible for declaring its output VAT; withholding VAT is a collection mechanism and does not replace the supplier’s VAT return.
Legislation and KRA guidance on withholding VAT penalties and remittance deadlines have changed over time. Confirm the current obligations with KRA rather than relying on an older webpage or an inherited Odoo configuration. Record the applicable filing timetable in the finance control calendar.
Withholding VAT configuration checklist
● Confirm that the buying entity is an appointed KRA withholding VAT agent before activating the process. Appointment is the trigger for this control.
● Confirm the supplier is VAT-registered and capture the supplier PIN accurately. The payment must be remitted in that supplier’s PIN.
● Create a separate 2% withholding VAT tax in Odoo and post it to a dedicated clearing account. Do not reduce output VAT or alter the standard 16% VAT tax.
● Build exclusions for zero-rated supplies, official aid-funded projects and qualifying manufacturers. These exceptions should be visible in the tax rule, not handled through informal journals.
● Reconcile the clearing account to iTax remittances within five working days. A clearing balance after the deadline needs immediate review.
For example, when an appointed buyer pays a VAT-registered supplier for a taxable supply, finance should record any applicable withholding VAT separately from the supplier’s output VAT. Posting the withholding amount to a dedicated clearing account and reconciling it to the iTax remittance protects both parties’ tax records. Netting it incorrectly against output VAT obscures the audit trail.
Frequently Asked Questions
When is VAT registration compulsory in Kenya?
Compulsory VAT registration depends on whether taxable supplies meet KRA’s current statutory threshold over the relevant assessment period. Voluntary registration may be possible. Confirm the threshold in force and document the company’s decision before configuring Odoo.
When is the Kenya VAT return due?
Submit the monthly VAT return and pay through KRA iTax by the applicable statutory deadline, including a nil return where required. Maintain an internal cut-off for reconciling eTIMS records and resolving exceptions in advance.
Can we claim VAT from any supplier invoice entered in Odoo?
No. Input VAT must relate to taxable business supplies and have valid support. KRA’s prefilled return can reject invoices that are not validated through TIMS or eTIMS, or that lack a customs import declaration.
Does withholding VAT replace the supplier’s VAT payment?
No. An appointed withholding VAT agent may be required to withhold and remit the prescribed amount, but the supplier must still account for output VAT in its own return.
A well-configured Odoo VAT process gives finance a clearer view of taxable transactions, eTIMS transmission results, input VAT evidence and withholding obligations. SERPA Africa can help your team assess the current setup, correct data and reporting gaps, and plan a controlled Odoo KRA eTIMS integration. Contact us for a tailored consultation and quotation.
Editorial review note: Current Kenyan VAT registration thresholds, VAT and withholding rates, eTIMS specifications, reliefs and filing deadlines must be checked against KRA guidance before publication. Commercial service prices are intentionally excluded.