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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

Get this done properly

Custom-built, fast, and yours to keep. Web design, e-commerce, SEO and custom applications for businesses across Kenya.

Rather just ask?

Send your brief and get a fixed scope and price back within a working day.