The ERP that runs itself, so you can run the business
nemphi reads your documents, writes the journal entries, issues e-invoices, chases receivables, and reconciles payments — with agents that pace themselves to your operation and ask before they touch money.
- 33
- tools in one registry, one pipeline
- Double-entry
- balanced, append-only, reversible
- MCP
- your outside agents, the same rules
Ask. The dashboard builds itself.
This is the product's overview as it looks from the inside. Switch dashboards or ask a question: every answer comes back as blocks — stats, charts, tables — and any of them can be saved as a dashboard that recomputes on live data.
Overview
Andina Distribution on auto-pilot: live metrics, agents that pace themselves to your activity, and answers about your data.
What it already does, today
This isn't a chatbot on top of an ERP. Every capability is a tool in one registry, invoked through one pipeline: authentication, tenant scoping, policy, idempotency, transaction, and ledger.
The whole loop, with no data entry
Here's a vendor invoice from the moment it arrives to the moment it's on the books.
- 01
It arrives
A document is uploaded or emailed in. Text is extracted, chunked, and indexed.
- 02
It's understood
The model classifies it and pulls the fields — party, number, VAT, currency — and the event wakes the agent.
- 03
It's proposed
The agent pulls the supporting context, assembles the draft, and checks it against invoices already recorded.
- 04
You approve
Policy stops anything financial. On approval it posts, and the balanced entry lands in the same transaction.
One pipeline for your people, your agents, and everyone else's
Everything the UI does is a tool invocation. The TypeScript SDK, the key-authenticated API, and the MCP endpoint all take exactly the same path — same policy, same ledger.
- Typed, zero-dependency SDK, shared with the web app
- Per-tenant API keys, role scoping, and approvals
- MCP endpoint: outside agents, same guardrails
import { createClient } from "@nemphi/sdk";
const nemphi = createClient({
baseUrl: "https://api.nemphi.com",
token: process.env.NEMPHI_API_KEY,
});
// Same pipeline the UI uses: policy, idempotency, and the action ledger.
const { invoice, journal_entry } = await nemphi.postInvoice(id, {
idempotencyKey: `post-${id}`,
});
console.log(invoice.status, journal_entry.entry_number);
// → posted 1043Frequently asked questions
Stop operating your ERP. Start supervising it.
Leave your details and we'll reach out within a couple of days to onboard you with the next early-access batch.