Skip to content

AI & Automation

Your competitors are already automating their invoicing. A textile merchant in Jaipur is creating invoices from WhatsApp voice notes. An accountant in Mumbai is reconciling 500 invoices across three businesses before lunch. A Delhi logistics company has an AI agent that files GST prep data every month without a single manual step.

This is not the future. This is happening now, with Hisaabo.

Hisaabo exposes every business operation through a clean, typed API. That design choice was deliberate: it means any AI agent, automation script, or CI/CD pipeline can interact with your business data the same way a human would through the dashboard — without screen-scraping, browser automation, or brittle workarounds.


Indian small and medium businesses lose 8–12 hours a week to manual bookkeeping tasks: entering invoices, chasing overdue payments, reconciling bank statements, calculating GST liability, and updating stock records. These are not judgment calls — they are repetitive, rule-based operations that AI agents can handle reliably.

The problem with most accounting software is that it was designed for humans clicking through a UI. The data is locked inside proprietary systems with no programmatic access. An AI agent that could theoretically send your payment reminders or flag GST mismatches cannot, because the software has no API.

Hisaabo is different. The entire product is API-first. The web dashboard, mobile app, and desktop app are all thin clients over the same tRPC API. That means:

  • Any AI agent that can make HTTP requests can do anything a human can do in the dashboard
  • The MCP server gives AI assistants like Claude structured, typed access without writing API code — ~50 tools covering invoicing, parties, inventory, payments, expenses, GST, shipping, banking, reports, store, targets, and bulk import
  • The CLI tool is built with Ink 5 (React for the terminal) and lets you pipe business data into shell scripts and automation workflows
  • Responses are paginated and bounded, keeping AI context windows from being flooded with data

The goal is to let you spend your time on decisions — pricing strategy, customer relationships, business growth — while AI handles the routine bookkeeping work.


You could build an invoicing API from scratch, wire up a GST calculation engine, handle multi-tenant business isolation, and implement audit logs. Or you could use Hisaabo.

CapabilityBuilding your ownHisaabo
API coverageMonths of development130+ endpoints, ready today
Business domainsBuild each one manually14 domains covered (invoicing, parties, inventory, GST, payments, expenses, banking, reports, and more)
GST complianceStudy CGST/SGST/IGST rules, HSN codes, filing formatsBuilt in — GSTR-1, GSTR-3B, state-wise tax splits, HSN summaries
Multi-tenant isolationDesign and implement from scratchEvery request is business-scoped via x-business-id
Type safetyManual schema maintenanceEnd-to-end TypeScript types from AppRouter — no codegen
MCP integrationBuild your own MCP serverZero-config MCP server with ~50 tools, works with Claude Desktop today
Indian business contextLearn the rules (April FY, UPI, HSN, GSTIN)All of it works out of the box
Audit trailDesign and implementEvery API call logged, every MCP tool call recorded
Time to first AI agent3–6 months5 minutes

The answer is obvious. Use Hisaabo as the backend, build the AI on top.


These are the kinds of automations Hisaabo makes possible today.

A Jaipur textile shop owner uses Claude to create invoices from WhatsApp voice notes. The shop owner forwards a voice note: “Bhai, 50 meters of georgette at 180 per meter for Sharma Fabrics.” A WhatsApp bot transcribes the note, passes the text to Claude via the MCP server, and Claude calls invoice_create with the resolved party ID, item details, and GST rate. The invoice is ready in under 30 seconds. The owner never opens a browser.

A Mumbai accountant uses an OpenClaw agent to reconcile 500 invoices across 3 businesses in under 10 minutes. Every morning at 8 AM, an agent pulls all overdue invoices using invoice_list, cross-references payment records, flags discrepancies, and sends a prioritized reconciliation list to the accountant’s Slack. What used to take half a day now takes the time it takes to read a Slack message.

A Delhi delivery fleet manager’s agent auto-generates delivery challans and updates Shiprocket. When an order is confirmed in the Hisaabo online store, an agent creates the delivery challan via invoice_create (type: challan), pushes the shipment details to Shiprocket’s API, and records the tracking number back against the invoice. The fleet manager’s job is to manage drivers, not push data between software tabs.

A Bengaluru CA’s firm runs monthly GST prep for 12 clients without opening a single dashboard. A cron job fires on the 28th of every month. For each client, it calls gst_report (GSTR-1 and GSTR-3B), formats the output into a structured handoff document, and emails it to the filing team. Twelve clients. Zero manual data exports.


The Model Context Protocol (MCP) is an open standard that lets AI assistants connect to external tools and data sources through a structured interface. Hisaabo’s MCP server exposes your business data as MCP tools and resources, so AI agents can act on your behalf without you writing a single line of integration code.

Once you connect Hisaabo’s MCP server to Claude Desktop or an OpenClaw agent, natural-language requests become real business operations:

User: "Create an invoice for Montu Arora — 7.3 kg spinach at ₹65/kg"
AI Agent: [calls invoice_create tool with resolved party ID, item details, and calculated tax]
AI Agent: "Done. Invoice BB-12948 created for Montu Arora — ₹474.50 total
(7.3 kg × ₹65 = ₹474.50, exempt from GST as fresh vegetables).
Should I send it via WhatsApp or mark it as pending?"
User: "Which customers owe me more than ₹10,000?"
AI Agent: [calls party_list tool with outstanding balance filter]
AI Agent: "Three customers have outstanding balances above ₹10,000:
- Sharma Traders: ₹34,200 (oldest invoice: 47 days)
- Gupta Enterprises: ₹18,750 (oldest invoice: 12 days)
- Vinod & Sons: ₹11,400 (oldest invoice: 63 days)
Want me to draft a payment reminder for Vinod & Sons first,
since they have the oldest unpaid invoice?"
User: "Give me a GST summary for this quarter"
AI Agent: [calls gst_report tool with report_type: "gstr3b" for the current quarter]
AI Agent: "Q3 FY 2025-26 GST summary:
Total taxable turnover: ₹8,42,500
CGST collected: ₹37,912
SGST collected: ₹37,912
IGST collected: ₹14,200
Net GST liability: ₹90,024
Your GSTR-3B is due in 11 days."

See the MCP Server setup guide for full installation and configuration instructions. The short version:

Terminal window
# 1. Install CLI and authenticate
npm install -g @hisaabo/cli
hisaabo login
hisaabo whoami --json # copy token, tenantId, businessId from output

Then add this to your Claude Desktop claude_desktop_config.json:

{
"mcpServers": {
"hisaabo": {
"command": "npx",
"args": ["@hisaabo/mcp"],
"env": {
"HISAABO_API_URL": "https://your-hisaabo-instance.com",
"HISAABO_API_KEY": "sess_...",
"HISAABO_TENANT_ID": "tenant-uuid",
"HISAABO_BUSINESS_ID": "business-uuid"
}
}
}
}

The MCP server exposes tools across all Hisaabo business domains:

DomainTools
Invoicinginvoice_list, invoice_create, invoice_get, invoice_update_status, invoice_pdf_url, invoice_delete
Partiesparty_list, party_create, party_get, party_update, party_delete, party_ledger
Itemsitem_list, item_create, item_get, item_update, item_delete, item_adjust_stock, item_categories
Paymentspayment_list, payment_create, payment_get, payment_update, payment_delete
Expensesexpense_list, expense_create, expense_update, expense_delete, expense_categories
GSTgst_report, gst_report_csv
Dashboarddashboard_summary
Shipmentsshipment_list, shipment_get, shipment_create, shipment_update, shipment_delete
Bankingbank_account_list, bank_account_get, bank_account_create, bank_account_transfer, bank_account_transactions, bank_account_summary
Reportsreport_daybook, report_outstanding, report_tax_summary, report_item_sales, report_stock_summary, report_party_statement, report_payment_summary
Storestore_settings, store_update_settings, store_orders, store_order_get, store_order_update
Targetstarget_list, target_create, target_progress, target_my
Importimport_parties, import_items, import_invoices, import_payments

Full schema documentation is in the MCP Server reference.


The Hisaabo CLI (hisaabo) is built with Ink 5 (React for the terminal) and Commander.js. It renders rich interactive tables, colored status badges, and INR-formatted numbers directly in your shell. It is designed for three audiences: developers who want to script business operations, system administrators setting up automation, and AI agents that run shell commands as part of a broader workflow.

Terminal window
npm install -g @hisaabo/cli
# Authenticate (interactive prompt for URL, email, password)
hisaabo login
# Check current context
hisaabo whoami
Terminal window
# Morning business snapshot
hisaabo dashboard --period today
# See who owes you money
hisaabo invoice list --status overdue --sort oldest-first
# Check stock levels
hisaabo item list --low-stock
# Record a payment
hisaabo payment create --party "Sharma Traders" --amount 15000 --mode upi

Pass --json for clean JSON output, then pipe into jq and other Unix tools:

Terminal window
# Daily morning report sent to Slack
hisaabo dashboard --period today --json | \
jq '{revenue: .totalSales, outstanding: .receivable}' | \
curl -X POST -H 'Content-type: application/json' \
-d @- https://hooks.slack.com/your-webhook
# Find items below low-stock threshold
hisaabo item list --low-stock --json | \
jq '.[] | "\(.name): \(.stockQuantity) \(.unit) remaining"'
# Export GSTR-1 CSV for CA
hisaabo gst r1 --month 3 --year 2026 --csv --output /var/gst-reports/

Full command reference is in the CLI documentation.


If you are building a custom AI agent or integration, the underlying tRPC API is the right layer to work with. It is the same API the dashboard uses, so anything you see in the UI is achievable programmatically.

All API calls require a session token in the Authorization header and the target business ID:

Authorization: Bearer sess_VbK2mQ9xP4nR7wA1...
x-business-id: <your-business-uuid>
x-tenant-id: <your-tenant-uuid>

Get your session token by logging in via the CLI:

Terminal window
hisaabo login
hisaabo whoami --json # prints token, tenantId, businessId

Session tokens last 30 days. For unattended server automations, store the token in an environment variable and refresh it monthly.

Pagination — All list endpoints accept page and limit parameters. Use limit: 20 or lower in AI agent contexts to keep responses inside context window budgets. The MCP server automatically caps at 25 per page.

const { data, total } = await trpc.invoice.list.query({
status: "overdue",
page: 1,
limit: 20,
});
// Fetch next page by incrementing page until data.length < limit

Business isolation — Every request must include the x-business-id header. If you manage multiple businesses, each has its own ID.

Error handling — The API returns structured errors with machine-readable codes:

{
"error": {
"code": "NOT_FOUND",
"message": "Party not found",
"data": { "partyId": "party_abc123" }
}
}

Rate limits — The default limits are:

  • 120 requests/minute for authenticated requests
  • 10 requests/minute for anonymous requests

AI agent workflows that batch-process large datasets should spread requests over time or request a higher limit for self-hosted installations.

If your agent is written in TypeScript, import the AppRouter type from @hisaabo/api for end-to-end type safety without any code generation step:

import { createTRPCClient, httpBatchLink } from "@trpc/client";
import SuperJSON from "superjson";
import type { AppRouter } from "@hisaabo/api";
// Get these values from: hisaabo whoami --json
const client = createTRPCClient<AppRouter>({
links: [
httpBatchLink({
url: `${process.env.HISAABO_API_URL}/api/trpc`,
transformer: SuperJSON,
headers: {
Authorization: `Bearer ${process.env.HISAABO_API_KEY}`,
"x-business-id": process.env.HISAABO_BUSINESS_ID,
"x-tenant-id": process.env.HISAABO_TENANT_ID,
},
}),
],
});
// Fully typed — your editor knows every field, every filter, every response shape
const { data: overdueInvoices } = await client.invoice.list.query({
status: "overdue",
page: 1,
limit: 20,
});

These features are in active development. The goal with each one is the same: the AI does the routine monitoring and data processing, you make the final call.

GST rates in India change through government gazette notifications — notifications that most business owners miss until a customer points out the wrong rate on an invoice. Hisaabo will monitor official government sources for rate changes and surface them directly in your dashboard.

The workflow:

  1. Government publishes a GST rate change notification
  2. Hisaabo detects the change and identifies which items in your catalog are affected
  3. You receive an in-app notification: “GST rate for HSN 0910 (spices) changes from 5% to 12% effective April 1”
  4. Review the affected items and accept with one click — or make individual adjustments before accepting

You stay in control. The AI handles the monitoring and mapping; you handle the approval.

Pricing decisions for Indian SMBs are often made on gut feel because gathering competitive data is time-consuming. This feature aggregates publicly available market pricing data and cross-references it with your own margins to surface actionable pricing suggestions.

The workflow:

  1. Hisaabo collects market price data for categories matching your item catalog
  2. Compares your prices against market ranges and your own cost/margin data
  3. Surfaces items where you may be underpricing (leaving money on the table) or overpricing (losing sales)
  4. Suggests adjusted prices — you accept, modify, or dismiss each suggestion

Your actual pricing data never leaves your server. The market data feeds are external; the comparison logic runs locally.

For businesses that sell physical goods through the online store, the gap between “invoice created” and “shipment dispatched” currently requires manual work in a separate Shiprocket dashboard. This integration closes that gap.

The workflow:

  1. A customer places an order in your Hisaabo online store
  2. You confirm the order and create an invoice — as you do today
  3. Hisaabo automatically pushes the shipment to Shiprocket: customer address, item weights, dimensions
  4. Shiprocket generates the shipping label; Hisaabo attaches it to the invoice
  5. Tracking updates from Shiprocket sync back to Hisaabo and to the customer via WhatsApp

Handling inbound customer questions — order status, payment confirmation, product availability — takes time away from running your business. This feature lets you deploy a customer-facing AI agent for your Hisaabo online store, powered by OpenClaw.

The agent reads from your live Hisaabo data via MCP:

  • Order status and tracking information
  • Payment confirmation and receipt generation
  • Product catalog and stock availability
  • Store policies and business hours

Setup:

  1. Connect your OpenClaw account in Settings > Integrations
  2. Configure the agent’s persona, tone, and escalation rules
  3. The agent goes live on your store’s chat widget
  4. All conversations are logged; complex issues are escalated to you

The agent never takes actions that modify data without your explicit permission. It reads and reports; it does not create invoices or process refunds autonomously.

Every GST invoice needs HSN/SAC codes — and getting them wrong means compliance headaches. When you create an item, Hisaabo’s AI will suggest the correct HSN code from India’s 8,000+ code database.

Type “Basmati Rice 25kg” → AI suggests: 1006 - Rice (99% confidence). Confirm with one tap. The system learns your business’s specific mappings, so subsequent items in the same category auto-fill instantly.

Smart Item Catalog from Business Description

Section titled “Smart Item Catalog from Business Description”

New to Hisaabo? Tell the AI what your business does:

“I run a grocery store in Udaipur selling vegetables, rice, dal, spices, and packaged snacks”

The AI generates 15-20 items with names, units (kg/g/pcs), suggested market prices, HSN codes, and GST rates — all calibrated for Indian grocery retail. Review the list, edit what you want, and your catalog is ready in 2 minutes instead of 2 hours.

Take a photo of your product → AI creates the item automatically:

  1. Point your phone camera at the product
  2. AI identifies: product name, category, approximate market price
  3. Item is created with description, unit, and category pre-filled
  4. You confirm and adjust the price

Perfect for shops with hundreds of SKUs. Scan your shelves and build your catalog in an afternoon.

Your online store deserves professional product photos — even if all you have is a phone camera. Upload a raw product photo, and AI transforms it:

  • Background removal and replacement with clean white/gradient
  • Lighting normalization and shadow addition
  • Consistent framing across your entire catalog

Real-world automation workflows you can build today with the CLI and API.

Send payment reminders for overdue invoices

Section titled “Send payment reminders for overdue invoices”

An AI agent workflow that identifies overdue invoices and drafts personalized reminders:

Trigger: Daily at 9 AM (cron)
Agent steps:
1. hisaabo invoice list --status overdue --json
2. For each invoice > 30 days overdue:
a. hisaabo party get <party-id> --json (get contact details)
b. Draft reminder message referencing invoice number and amount
c. Log draft to /reminders/$(date +%Y-%m-%d).json for review
3. Send summary to owner: "5 overdue invoices need attention"

Auto-reorder items below low stock threshold

Section titled “Auto-reorder items below low stock threshold”
#!/bin/bash
# reorder-check.sh — run daily via cron
LOW_STOCK=$(hisaabo item list --low-stock --json)
COUNT=$(echo "$LOW_STOCK" | jq 'length')
if [ "$COUNT" -gt 0 ]; then
echo "$LOW_STOCK" | jq -r '.[] | "REORDER: \(.name) — \(.stockQuantity) \(.unit) remaining (threshold: \(.lowStockThreshold))"' \
| mail -s "Hisaabo: $COUNT items need reordering" owner@yourbusiness.com
fi
#!/bin/bash
# weekly-report.sh — run every Monday via cron
REPORT_DATE=$(date +%Y-%m-%d)
OUTPUT="/var/reports/hisaabo/week-$REPORT_DATE.json"
# Collect data
DASHBOARD=$(hisaabo dashboard --period this-week --json)
OVERDUE=$(hisaabo invoice list --status overdue --json)
# Email the report
jq -n \
--argjson d "$DASHBOARD" \
--argjson o "$OVERDUE" \
'{period: "this-week", revenue: $d.totalSales, overdueCount: ($o | length)}' | \
mail -s "Weekly Business Report — $REPORT_DATE" owner@yourbusiness.com

Customer asks about order status (OpenClaw agent + MCP)

Section titled “Customer asks about order status (OpenClaw agent + MCP)”

When a customer messages your store’s chat widget:

Customer: "Hi, I ordered rice yesterday. What's the status?"
OpenClaw Agent:
[calls hisaabo MCP: store_order_list with customer phone]
[finds order SO-4821, status: confirmed, dispatched via Shiprocket]
[calls hisaabo MCP: shipment_tracking for SO-4821]
Agent: "Hello! Your order SO-4821 (25 kg Basmati Rice) was dispatched
this morning via Shiprocket. Tracking ID: SR-98421.
Expected delivery: tomorrow between 10 AM – 2 PM.
You'll get a WhatsApp update when it's out for delivery."

  • MCP Server — Install, configure, and connect to Claude Desktop or OpenClaw
  • CLI Tool — Full command reference and power user workflows
  • Integrations — WhatsApp bots, Slack, Google Sheets, Shiprocket, Tally, and more
  • Invoicing — Invoice structure, line items, tax calculation
  • GST Compliance — GSTR-1, GSTR-3B, HSN codes, state-wise tax rules
  • Online Store — Store setup, catalog management, order fulfillment
  • API Reference — Full tRPC procedure documentation
  • Self-Hosting — Production deployment, environment variables, security