GuideNepalKharchapatraProductWalkthroughPersonal Finance

How Kharchapatra works: a walkthrough of the Nepali finance app, from signup to monthly review

A start-to-end tour of Kharchapatra — accounts, statements, budgets, goals, analytics, the tax helper, and the 15-minute monthly review.

Parjanya ShakyaJestha 2083 BS15 min read

Personal finance tools usually assume two things that don't hold in Nepal. One, that your bank exposes a public API and a tidy CSV export. Two, that you live in a single-calendar world where "this fiscal year" means January to December.

Both assumptions break the moment you try to track money seriously here. Your bank's PDF doesn't open the way the app expects. Your accountant works in Bikram Sambat. Your salary slip has CIT and SSF deductions a Western tool has never heard of. Half your spending happens in eSewa and Khalti, not on a card.

Kharchapatra was built for exactly that situation: a Nepali household balance sheet, in रुपैयाँ, against the calendar your accountant actually uses. What follows is a start-to-end walkthrough of what the app does, in roughly the order you'd touch it.

Why this app exists at all

Three problems Western finance trackers don't solve for a Nepali user, ranked by frequency:

  1. The statement isn't a CSV. Many Nepali banks ship PDFs as the default export. Those PDFs vary by bank and even month-to-month within the same bank. Auto-import has to flex around that variation.
  2. The calendar is split. Your salary slip, tax filing, audit deadline, and most government rate changes are in BS. Your bank statement and most product UIs sit in AD. An app that doesn't speak both forces you into a conversion habit you'll quickly drop.
  3. The categories are different. "Groceries" is a Western framing. Most Nepalis describe daily spending as खाना, किनमेल, यातायात, चियापानी. Categories named in the language you describe spending in are the difference between an app you use for a month and one you use for years.

Those three are the spine of the product. Budgets, goals, analytics — all built on top.

The shape of the app

Three layers, in order:

LayerWhat lives thereWhere it shows up
CaptureStatement imports, manual entries, accounts, opening balances/dashboard/statements, /dashboard/accounts, the "+ Add" form
OrganiseCategories, transactions table, edit dialog, bulk recategorisation/dashboard/transactions, /dashboard/categories
DecideDashboard summary, analytics, budgets, goals, EMIs, tax helper/dashboard, /dashboard/analytics, /dashboard/budgets, /dashboard/goals, /dashboard/emi, /dashboard/tax

Good budget decisions need organised transactions. Organising transactions needs them captured first. The walkthrough below moves through those three layers in that order.

Step 1 — Sign up

Open web.kharchapatra.com on a laptop, or launch the Android app. Sign-up takes a name, email, password (8+ characters), and a password confirmation. No card, no phone-number OTP. The session is stored as an httpOnly cookie that lasts thirty days, so you stay logged in until you explicitly sign out.

Step 2 — Add your accounts

The app first needs the structure of your money: which banks, which wallets, how much in each.

Open Accounts in the sidebar. The "Add account" flow lists 10+ Nepali institutions as presets (NIC Asia, Nabil, Global IME, NMB, Standard Chartered, Himalayan, Prabhu, Siddhartha, plus eSewa, Khalti, IME Pay), or you can name a custom one (cash, hundi, a parent's joint account, anything else). Each account takes:

  • Name (e.g., "NIC Asia salary", "eSewa primary", "Cash wallet").
  • Type (savings, current, wallet, cash, credit card).
  • Opening balance in rupees as of a chosen date. The rest of the app calculates from this number, so get it right.
  • Currency (defaults to NPR; USD is supported for the dollar-account scenario).

The accounts page then lists each account with its current balance and a small sparkline of the balance trend over the last 30 days. Click into an account to see its transactions only, edit details, or archive it.

Step 3 — Drop in a statement

Here the hour you'd spend in a spreadsheet collapses to about a minute.

Go to Statements → Upload. Drag a CSV, PDF, or Excel file — the same file your bank emails or that you download from their portal. The app:

  1. Auto-detects the format. eSewa Excel exports are recognised by their header structure. Bank PDFs fall back to OCR when needed. Bank CSVs are tested against a few common Nepali bank layouts.
  2. Maps the columns. Date, description, amount, debit/credit, account number: Kharchapatra guesses which column is which. You confirm or adjust the mapping in a simple table with dropdowns, and it remembers the mapping for next time so you don't have to map twice.
  3. Shows a preview. Each parsed row appears in a review table with a checkbox. Deselect rows that aren't real transactions (interest reversals, internal fund movements, anything the bank dumped in the file that shouldn't count).
  4. Dedupes. Anything already in your account (matched by date + amount + description hash) is flagged and skipped by default.
  5. Auto-categorises. Roughly 150+ English and Nepali keywords map transactions into 24 default categories. FOODMANDU goes to खानपिन, "DARAZ ORDER" goes to किनमेल, "FONEPAY SALARY" goes to तलब, and so on. You only fix the ones it gets wrong.
  6. Imports. Click confirm and the rows land in your transactions table.

For accounts that don't issue statements (cash, hundi, an informal loan account), the manual entry form on the dashboard has two fields: amount and a one-line description. Date defaults to today; category is suggested from the description.

Step 4 — The dashboard, at a glance

Open /dashboard, the home screen. Seven sections, top to bottom:

  • Sync status strip. A small banner showing "Synced X min ago" once you've synced from the Android app at least once. Hidden for web-only users; it appears only after a mobile device has registered a sync.
  • Summary card with greeting and net balance. "Good morning, Parjanya" up top, then a hero card showing current net balance across all accounts, plus the period summary (income, expense, transaction count for the month).
  • Quick actions. Four shortcut tiles: Import statement, Analytics, Budgets, Savings Goals. The fastest path to the next-most-common thing you'll do after opening the dashboard.
  • Health score card. A 0–100 score with a coloured arc, plus a four-factor breakdown: savings rate ((income − expenses) ÷ income), budget adherence (% of budgets within their cap), expense diversity (1 − top category's share, so the score rewards not having all spending in one bucket), and emergency fund (balance ÷ avg monthly expense, normalised to 6 months). Expand the card to see each factor's formula in plain language.
  • Expense by category (donut chart). The dominant categories of the current month, with percentages.
  • Income vs Expense Trend (area chart). Income and expense across the recent period. The shape of the gap between the two curves is where the saving rate lives.
  • Recent transactions. The last few rows, each with a category-coloured icon (income green, expense red, transfer violet), the merchant/description, the date, and the signed amount with the typographic minus.

The dashboard is read-only by design. Editing happens on the transactions page. The dashboard is the "is anything weird" view, not the "fix it" view.

Step 5 — Working with transactions

/dashboard/transactions is where most of the monthly time goes. Four moving parts on the page:

Search bar. A debounced free-text search across descriptions and merchants. Active filters show up as removable pills so you can see what's applied and click to clear individual ones.

Advanced filter popover. For precision: amount range, type (income/expense/transfer), specific account, specific category, source (manual/imported/recurring), and a date range.

The table itself. Each row shows date, description, category, account, amount. Click any row to open the edit dialog: change category, description, amount, account, or move the row to a different date. Selecting multiple rows opens the bulk action bar at the bottom: bulk recategorise (the most common operation), bulk delete, or move-to-account.

Pagination + CSV export. The table paginates at 25 rows. The export button at the top right downloads every row matching the current filter (not just the visible page) as a UTF-8 BOM-encoded CSV that opens cleanly in Excel.

The most-underused feature: bulk recategorisation. If the auto-categoriser dropped 40 different "FOODMANDU" rows into "Shopping" by mistake, you don't fix them one at a time. Search "foodmandu", select all, recategorise to खानपिन. One operation.

Step 6 — Categories, your way

The category page is where the Nepali-language framing lives. Default categories include खानपिन, यातायात, किनमेल, घरभाडा, बिजुली, खानेपानी, इन्टरनेट, मनोरञ्जन, स्वास्थ्य, शिक्षा, तलब, बोनस, घरबाट सहयोग, plus their English equivalents.

System defaults are read-only (they back the auto-classifier and stay consistent across accounts). Custom categories sit alongside them: set a colour and icon for each, and edit or delete the custom ones whenever. Custom categories play with budgets and analytics the same way default ones do.

Step 7 — Budgets

/dashboard/budgets lets you set a cap per category over a chosen period. Set "खानपिन — Rs 12,000" and the app:

  • Shows a progress bar that fills as the period progresses, with the current percent inside a tile next to the budget name.
  • Turns the card border amber once spend crosses 80% of the cap, so you see it at a glance the next time you open the dashboard or budgets page.
  • Turns the card border red once spend crosses 100%, and the card's footer switches from "Rs X remaining" to "Rs Y over."

No push notifications today; surfacing is visual, on the budgets and dashboard screens. The math is honest. Budgets are a forecasting tool, not a moral one. Blow past a budget and the app says "you went over." It doesn't try to make you feel guilty.

Step 8 — Goals and recurring rules

Goals (/dashboard/goals) are sinking-fund-style savings targets. Each goal carries a name, a target amount, an optional target date, and a coloured progress card. You add to the goal manually as you save; the card shows progress against the target along with the underlying math.

Recurring rules (/dashboard/recurring) capture predictable monthly bills (rent, internet, electricity, Netflix, the loan EMI) so they don't need re-entering each month. Each rule carries a name, amount, category, account, and frequency (daily/weekly/monthly/yearly). The page tracks each rule's next-due date. Clicking Run now materialises any rules whose next-due date has passed into real transactions, and tells you how many were created.

Step 9 — Analytics

/dashboard/analytics is where the dashboard's snapshot becomes a multi-period view. Three panels:

  • Category drilldown. Ranked bars of either expense or income by category for a chosen period. Click any bar and you jump to the transactions page already filtered to that category and date range. The single most useful feature for "where did all my money go in Mangsir."
  • Income vs expense trend comparison. A grouped bar chart of income and expense by day, week, month, or year. The granularity tab toggles the bucket size.
  • Balance history. A line chart of any single account's balance over the chosen period. Use this when you're trying to spot where a specific bank account's balance started bleeding.

The export button on this page downloads the underlying data so you can run your own pivot in Excel if you prefer.

Step 10 — The EMI calculator

/dashboard/emi is a standalone calculator. Feed it principal, interest rate, and tenure; it returns the EMI, total interest, and a month-by-month amortisation schedule. Same math as the home loan EMI math post, wrapped in a form. Handy for any "should I take this loan at this rate" question before you sign. Quicker than building a spreadsheet, and the amortisation table makes prepayment scenarios visible.

Step 11 — The tax helper

/dashboard/tax estimates your Nepal personal income tax against the current Bikram Sambat fiscal year's slabs. Inputs:

  • Annual income (rupees).
  • Filing status (individual or couple; couple-status slabs are wider, per the Finance Act).
  • SSF participant flag (zeros out the 1% social security tax on the first slab per Sec 21(4)).
  • Standard deductions: retirement contribution (CIT/PF/SSF up to the Rs 5 lakh cap), life insurance premium (up to Rs 40,000), health insurance premium (up to Rs 20,000), donations.

Output: total tax, effective rate, take-home, and a per-slab breakdown showing how each tax bracket contributes. Useful for the "should I top up CIT this year" question; see the CIT vs PF vs SSF post for the framing.

For full FY mechanics, the income tax brackets post walks through the slabs in detail.

Step 12 — Settings and what stays private

/dashboard/settings is the spine of the account:

  • Profile. Name, email, password.
  • Demo session. Visible only if you're in a demo account; lets you reset the demo data or exit the demo cleanly.
  • Theme. Light, dark, or system (the dashboard fully supports both).
  • Locale. English by default; partial Nepali UI for category names and key labels.
  • Danger zone. Permanent account deletion. Requires typing your email to confirm, and the deletion request goes to the backend with a confirm-email check.

What never happens anywhere in the app: a request for your banking password. No "log in with your bank to import" flow. The closest the app gets to your bank is a statement file you exported yourself.

The 15-minute monthly ritual

Once a month, ideally on the first weekend of a new BS month, the loop:

  1. Open Statements. Drop in last month's bank and wallet statements. Confirm the mapping (already remembered from last time), uncheck any junk rows, and import.
  2. Open Transactions. Search for anything the auto-categoriser flagged as "uncategorised" and bulk-recategorise.
  3. Open the dashboard. Eyeball the summary cards. If anything looks weird ("expense up 60% this month"), click into the category drilldown.
  4. Open Budgets. Adjust caps if your reality has shifted (festival month, wedding month, a new EMI).
  5. Open Goals. Check that the savings goals are on track for the target dates.

That's the whole thing. Fifteen minutes, roughly twelve times a year. The blog post The 15-minute monthly money review walks the ritual itself in more detail. Kharchapatra is the tool that makes it take fifteen minutes instead of two hours.

What Kharchapatra doesn't do (yet)

A few things to be honest about:

  • No live bank connection. Open Banking isn't available in Nepal, and screen-scraping someone else's credentials is the wrong tradeoff. The statement-upload workflow is deliberate.
  • No NEPSE portfolio tracking inside the app. For NEPSE-specific tools, Mero Share's portfolio view is what most users already rely on. Kharchapatra tracks the cash flowing in and out of your trading account, not the holdings themselves.
  • No automatic foreign-currency conversion. USD accounts work as a currency tag. If you earn in USD, the remote-work post covers the exchange-rate timing question separately.
  • No tax filing. The tax helper estimates what you owe; it doesn't file. Filing still needs a CA or the IRD portal.

The product is a tracker and a thinking tool. Not a bank, not a broker, not an accountant. The roadmap is to keep adding the smallest features that compound into a tighter monthly review, in that order.

Bikram Sambat: what's shipped, what's on the way

Worth surfacing, because the calendar question is the first thing most Nepali users ask about.

Shipped on the web today:

  • The tax helper anchors to the current Nepali fiscal year (FY 2082/83 in the slab definitions and label).
  • Money is in NPR (paisa under the hood, displayed via formatMoney).
  • The mobile Android app surfaces BS more prominently in its day-to-day UI.

Not yet shipped on the web:

  • Transaction rows currently show AD dates (day-month-year, "16 May 2026") via the standard formatter.
  • There is no BS-strip header, BS-aware filter, or BS goal-target picker on the web yet. Those sit on the build list.

The product intent is BS-first because the rest of your financial life already runs on it: salary slip, IRD circular, audit deadline, accountant's filing schedule. The web build is mid-transition toward that intent. The tax helper is the most visible BS touchpoint right now, with richer BS UI in progress.

What you actually need to know

  • Kharchapatra runs on three layers (capture, organise, decide) and the entire monthly loop is fifteen minutes once you've set up.
  • Statement import is the workhorse: CSV / PDF / Excel from any Nepali bank, eSewa / Khalti / IME Pay auto-detected, with column mapping, dedup, and auto-categorisation built in.
  • Budgets show progress visually (amber at 80%, red over 100%), recurring rules handle predictable bills via a "Run now" processor, analytics drill from a category to its transactions in one click, the tax helper handles current FY slabs, and the EMI calculator covers loan math.
  • Your bank password never leaves your bank. Kharchapatra works only on statements you export yourself.

Questions, feature requests, or banks Kharchapatra should support out of the box? Email parjanya57@gmail.com.

Frequently asked questions

What is Kharchapatra?
Kharchapatra is a personal finance tracker built for Nepal — it imports bank and wallet statements, sorts transactions into Nepali-named categories, runs budgets and savings goals, estimates your tax against the current Bikram Sambat fiscal year, and tracks EMIs and recurring rules. It runs on Android and on the web at web.kharchapatra.com, syncing the same account across both. Free during beta.
Do I need to give Kharchapatra my bank login?
No. Kharchapatra works on statements you export yourself — CSV, PDF, or Excel — and never sees a banking password or session. There is no Open Banking connection and no screen-scraping. Uploaded files are encrypted in transit and only the parsed transactions (not the original PDF) are kept long-term unless you ask otherwise.
Which Nepali banks and wallets are supported?
Any bank that lets you export CSV, PDF, or Excel works — that includes NIC Asia, Nabil, Global IME, Standard Chartered, NMB, Himalayan, Prabhu, Siddhartha, and most others. eSewa, Khalti, and IME Pay statements (Excel/CSV) are auto-detected. Manual entry covers cash, hundi, and any account that doesn't issue statements.
What does Kharchapatra cost?
Free during the public beta. Account creation, statement imports, budgets, goals, analytics, the tax helper, and the BS calendar all work without a card. Pricing for advanced features will be announced before anything stops being free; personal use of the core tracker is intended to remain free.
Does Kharchapatra support Bikram Sambat?
Partially today, more deeply on the roadmap. The tax helper anchors to the current BS fiscal year's slabs (Shrawan to Asar) and refers to FY 2082/83 in its label. The web dashboard currently renders transaction dates in day-month-year AD format (16 May 2026 style); the mobile app surfaces BS more prominently, and richer BS UI for the web (BS strip in the header, BS-aware filters, BS goal targets) is on the build list. The product's mental model is BS-first; the current web build doesn't yet show that on every screen.
How long does it take to get started?
About five minutes. Sign up, add your bank and wallet accounts (pick from a preset list of 10+ Nepali institutions or add custom ones), set opening balances, and drop in last month's statement. The auto-categorisation handles most tagging; you only override the ones it gets wrong.