A day's lag stops confusion
UPI and card settlements landing a day after the sale get matched against the right day's till total automatically, instead of leaving the owner to work out by eye which bank credit belongs where.
Available now
In build
The whole team
Nineteen specialists, each with a defined job and an honest status label.
See all nineteenThe owner can see at a glance which bank transactions already match a recorded invoice or expense, and which ones still need attention.
Works with
What it does
The owner uploads or connects a bank statement, and Khata proposes matches between bank lines and existing ledger entries based on amount, date, and payee similarity. Unmatched items are surfaced in a queue so nothing falls through the cracks before month-end.
A restaurant owner's UPI and card settlements land in the bank account a day after the sale, so the daily till total and the bank statement never quite line up on the same date, and by month-end nobody can say with confidence which of forty settlement batches actually cleared and which are still sitting somewhere unexplained. Chasing that gap by eye, line by line, eats an evening that should have gone to closing the shop instead.
Bank statement reconciliation proposes matches between bank lines and existing ledger entries based on amount, date, and payee similarity, and surfaces anything unmatched in a queue before month-end arrives. Nothing here moves money or reconciles a statement on its own — every proposed match waits for the owner or CA to confirm it, so a same-amount coincidence between two unrelated transactions never quietly slips into the books unnoticed as a false match.
Khata runs this directly on the platforms your customers already use — no separate app for them to install.
How it works
The owner uploads a bank statement file or connects a read-only bank feed, and the parser reads it into individual transaction lines ready for comparison against the existing ledger records already stored in the system, line by line.
Khata compares each bank line against ledger entries on amount, date, and payee similarity, and proposes likely matches for review rather than posting them as confirmed reconciliations automatically without a human checking each one first.
Every proposed match needs an explicit confirmation before it's treated as reconciled, so a coincidental same-amount transaction between unrelated parties never gets accepted into the books without a human actually checking it first, line by line.
Anything that hasn't found a proposed match, or has sat unmatched past a set threshold, appears in a dedicated queue so it gets chased down before month-end rather than being noticed for the first time only during a rushed month-end closing.
Why it matters
UPI and card settlements landing a day after the sale get matched against the right day's till total automatically, instead of leaving the owner to work out by eye which bank credit belongs where.
Unmatched transactions surface in a queue as they age, rather than all being discovered at once during a rushed month-end close that leaves little time to chase them down.
Every proposed match needs a human confirmation, so a same-amount coincidence between unrelated transactions gets a second look before it's ever accepted as genuinely and properly reconciled in the books.
The detail
Reconciliation here is proposal, not automation of judgement. Khata compares bank lines to ledger entries and suggests likely matches on amount, date, and payee similarity, but it never moves money or marks a statement reconciled without a human accepting each match. An over-eager auto-match fails quietly: two unrelated transactions of the same amount, on nearby dates, look identical to an amount-and-date matcher, and accepting that false positive pollutes the ledger with a wrong reconciliation.
The restaurant scenario is a particularly common version of a broader timing problem. Settlement lag between a sale and the corresponding bank credit is normal for UPI and card payments, but it means a naive day-by-day comparison would flag every single day's total as unmatched, purely because of a one-day delay in how processors settle funds. The matching logic accounts for this lag rather than treating it as an anomaly, and the unmatched-aging check only flags an item once it's been outstanding longer than the expected settlement window, not the moment a normal delay simply begins.
Bank statement formats themselves vary widely across Indian banks, and a statement parser that handles one bank's PDF layout cleanly can stumble on another's column ordering or date format entirely. When a parse fails or reads a line incorrectly, that transaction simply won't propose a sensible match at all, which is why the unmatched queue exists as a safety net independent of parsing accuracy — anything the parser mishandled ends up visible and flagged for manual attention, rather than silently dropped from the reconciliation altogether without a trace.
Industry use cases
13 industries where Khata applies this directly.
A car service center owner photographs a stack of spare-parts supplier invoices at month-end, Khata extracts the HSN codes and tax amounts from each, and the owner's CA opens the shared workspace to review the compiled purchase summary before filing.
See the automotive playbookA wholesale distributor pays several transport contractors during the month, and Khata flags which payments likely crossed the TDS threshold for Section 194C, compiling a worksheet the CA reviews before determining the actual deduction and filing.
See the b2b sales playbookA small lending intermediary's CA needs to confirm the edit-log audit trail has been continuously active all year before signing the Rule 11(g) audit trail reporting requirement, and pulls the full log directly from Khata's audit trail view rather than requesting IT logs separately.
See the banking and finance playbookA beauty product retailer sells both services and boxed skincare products, and Khata separates the two revenue streams in the ledger while calculating a consistent closing valuation for the unsold stock ahead of the CA's year-end review.
See the beauty and cosmetics playbookAn online tutoring business receives course-fee payments through multiple gateways during the month, and Khata reconciles each gateway payout against recorded receivables so the CA sees one consolidated income summary instead of three separate statements.
See the education playbookA freelance designer invoices three clients in a month and photographs a handful of software-subscription receipts, and Khata compiles both sides into a period summary the freelancer forwards to their CA before the quarterly GST filing.
See the freelancers and consultants playbookA physiotherapy clinic owner uploads a batch of supplier invoices for consumables, and Khata extracts amounts and HSN codes while keeping patient names on any attached billing documents restricted to the clinic's own staff and CA, not broadly visible in reports.
See the health and wellness playbookA furniture retailer with showrooms in two states ships a large order that crosses the e-way bill value threshold, and Khata pre-fills the consignment and HSN details from the invoice so the dispatch team only needs to generate the bill itself on the government portal.
See the home decor and furnishing playbookA marketing agency pays several freelance video editors as contractors during a campaign, and Khata's TDS worksheet flags the professional-fee payments likely requiring deduction under Section 194J for the CA's review before the agency deducts and deposits tax.
See the marketing agencies playbookA real-estate broker running two project-specific entities under separate GSTINs views a consolidated cash-position dashboard for planning, while their CA still receives two entirely separate GST summaries, one per GSTIN, for filing.
See the real estate playbookA restaurant owner's UPI and card settlements land in the bank account a day after the sale, and Khata's reconciliation queue matches each day's POS batch total against the corresponding bank credit, flagging any settlement that hasn't landed within the expected window.
See the restaurants and food playbookA spa sells packaged skincare products in addition to treatments, and Khata applies the correct HSN code to product line items and the correct SAC code to service line items on the same invoice, keeping the tax split accurate for the CA's review.
See the spas and salons playbookA travel agency books hotel and transport packages from several vendors for a client tour, and Khata's purchase-matching report shows which of those vendor invoices are already reflected in GSTR-2B, letting the CA hold back ITC claims on the ones that aren't yet visible.
See the travel and tourism playbookMore from Khata
A business owner stops losing paper receipts because every bill is captured the moment it's created, from a phone camera, a forwarded email, or a bulk upload.
Learn moreThe owner no longer types out every item, date, vendor, and amount from a receipt by hand — Khata reads it and fills the fields.
Learn moreThe business creates invoices that already carry the correct GSTIN, HSN/SAC code, and tax split so nothing needs re-keying at return time.
Learn moreEvery sale, purchase, payment, and receipt lands in a proper double-entry ledger instead of a loose spreadsheet or paper khata.
Learn moreEvery edit to the books is permanently recorded with who changed what and when, satisfying the statutory requirement companies already face.
Learn moreExpenses land in the right category (rent, salaries, supplies, utilities) automatically instead of the owner deciding from scratch every time.
Learn moreQuestions
No. It proposes matches between bank lines and ledger entries based on amount, date, and payee similarity, but every match needs an explicit confirmation from you or your CA before it counts as reconciled. Nothing is accepted automatically, and nothing here moves money or touches your bank account beyond reading the statement you've uploaded or the read-only feed you've connected to it.
The matching logic accounts for normal settlement lag between a sale and its corresponding bank credit, so a one-day delay on card or UPI settlements doesn't automatically flag as unmatched by itself. An item is only surfaced as genuinely unmatched once it's been outstanding longer than the expected settlement window for that specific payment type used by the business day to day.
A same-amount coincidence between unrelated transactions is exactly the scenario the confirmation step exists to catch — the match is only proposed, and a human still has to look at the date and payee details and actively accept it before it's treated as reconciled at all. This is exactly what prevents a harmless coincidence from quietly becoming a genuinely wrong reconciliation in the books.
Bank statement layouts vary significantly across Indian banks, and a parsing issue on an unusual format means that transaction won't produce a sensible proposed match at all. It should still surface in the unmatched queue rather than disappearing silently, so it still gets manually reviewed and reconciled by a person, even when the automatic parsing itself simply didn't work cleanly that time.
The rest of your stack
No rip-and-replace — match bank transactions to books works alongside the systems already running your business.
Coming soon