eTIMS for online sellers in Kenya
The short answer
If your business is registered for VAT or claims business expenses, sales made through your online store need eTIMS-compliant invoices. In practice this means integrating your store or accounting system with eTIMS so each order generates a valid electronic tax invoice automatically.
eTIMS is an invoicing rule that lands on your checkout.
eTIMS is the Kenya Revenue Authority’s electronic Tax Invoice Management System. The idea is simple: tax invoices are generated through a KRA-connected system, so each one carries a control code the authority can verify. For a shop with a till this is a device question. For an online store it is a question about what happens the moment an order is confirmed.
Whether this applies to you
Three common positions. Most online sellers are in one of them.
VAT registered
Directly in scope- Your position
- You are required to issue electronic tax invoices through an eTIMS-connected system.
- What it means online
- Every sale through the store has to produce a valid invoice, not just an order confirmation email.
- Build implication
- The store or the accounting system behind it has to talk to eTIMS automatically.
Not VAT registered, selling to businesses
Your customers will ask- Your position
- Your business customers need compliant invoices to support their own expense claims.
- What it means online
- If you cannot issue one, you quietly lose B2B orders to sellers who can.
- Build implication
- Same integration, driven by commercial pressure rather than by your own filing.
Selling only to consumers
Check, do not assume- Your position
- Obligations vary with turnover, sector and registration, and the rules have changed more than once.
- What it means online
- Confirm your status before you build anything, and again if your turnover shifts.
- Build implication
- Build the store so invoicing can be switched on later without a rebuild.
What the requirement means for the order flow
An order confirmation and a tax invoice are two different documents. Most Kenyan stores ship with the first and assume it covers the second.
The order has to be captured completely
Item descriptions, unit prices, quantities, the tax treatment of each line and the customer's details including their PIN where they need an invoice they can claim against.
The invoice is generated, not typed
On payment confirmation the system creates the invoice through an eTIMS-connected path, and stores the control details that come back with it.
The customer receives it
Attached to the confirmation email or available in their account. A buyer who has to email you to ask for an invoice will usually not bother a second time.
Your records match
What the store recorded, what the payment provider recorded and what was invoiced should reconcile without anyone exporting a spreadsheet at month end.
Credits and refunds are handled
A cancelled or refunded order needs a credit note, not a deleted invoice. This is the part that gets skipped and the part that causes trouble later.
Three ways stores actually connect
They differ in how much engineering sits on your side.
Through your accounting system
Usually the least work- How it works
- The store sends orders to accounting software that already has an eTIMS connection, and that system issues the invoice.
- Good when
- You already run QuickBooks, Zoho, Sage or a local package your accountant uses.
- Watch out for
- The store-to-accounting sync becomes a thing that must be monitored, not fired and forgotten.
A direct integration
Most control- How it works
- Your store connects to eTIMS through the relevant KRA interface and issues invoices itself.
- Good when
- Order volume is high, or your product and tax rules do not fit a packaged tool.
- Watch out for
- It is real engineering: credentials, error handling, retries, and keeping up with KRA changes.
Manual invoicing
A starting point only- How it works
- Someone raises invoices in the KRA portal or a taxpayer tool after orders come in.
- Good when
- You have a handful of orders a week and are testing whether the business works at all.
- Watch out for
- It fails at exactly the moment you want it to work, which is when sales grow.
What goes wrong once it is live
The integration is rarely the hard part. These are.
- Checkout never collects the customer PIN, so no claimable invoice can be issued to a business buyer.
- Payment is confirmed but the invoice call fails, and nobody is told because there is no alerting.
- Partial shipments and backorders invoice the whole order up front.
- Refunds are processed in the payment provider only, leaving an invoice with nothing behind it.
- Prices are stored tax-inclusive in one system and tax-exclusive in the other.
- Nobody owns the monthly reconciliation, so errors are found at filing time rather than the same week.
A sensible sequence
Confirm your obligation
With KRA or your accountant, in writing. Everything downstream depends on the answer, and it is not a decision a developer should make for you.
A clear statement of what you must issue, and to whom.
Decide where invoices are born
In the store, or in the accounting system. One of them owns invoice numbering and tax logic. Two owners is the root of most reconciliation pain.
One system of record.
Fix the data the checkout collects
Business name and PIN as optional fields that appear when a buyer asks for a tax invoice, plus clean line-level tax treatment on every product.
Invoices that can actually be issued.
Connect, then test the unhappy paths
Not just a successful sale. Test a failed payment, a partial refund, a cancelled order and a timeout from the tax system.
Confidence under the conditions that matter.
Give someone the reconciliation view
A simple screen listing orders with no valid invoice, and invoices with no matching payment. Five minutes a week beats an audit.
Problems found while they are small.
What sellers ask us
Is an order confirmation email enough?
No. A confirmation records that a sale happened. A tax invoice is a specific document with required details and, under eTIMS, verification data from KRA. They can be sent together, but one does not replace the other.
Does my Shopify or WooCommerce store support this out of the box?
Neither platform ships with a KRA connection. You get there through an accounting integration, a dedicated app or service, or custom development. Which one is right depends on volume and on what your accountant already uses.
We sell only to individuals. Can we ignore it?
Do not assume so. Obligations depend on your registration and sector, and they have been tightened over time. Ask KRA or your accountant, and build the store so invoicing can be enabled without reworking checkout.
How long does the integration take?
The connection itself is usually the smaller part. Cleaning product tax data, adding the checkout fields and testing refunds and partial orders is what sets the timeline, and that scales with how tidy your catalogue already is.
