Security & deployment

Installed on your premises. Not on ours.

Koshtaq is on-premise NBFC software: lender allocation software installed on your servers, beside your LMS, that sends nothing to KGT. This page is for IT, CISO and compliance teams: what runs where, who can see what, and what the inspector gets.

01 · How the on-premise deployment works

Your data never leaves your network.

01

On-premise installation

Runs inside your infrastructure as a Docker Compose stack behind nginx. The loan tape, customer data and lender terms stay on your network. There is no shared multi-tenant instance.

02

Nothing is sent to us

The application sends nothing to KGT on its own. The only data that leaves your network is the lender schedule your team chooses to send.

03

Support without access

Fixes and tuning are shipped as versioned releases your IT team deploys. Live access to the system is granted per session, by you, and shows up in the audit log like any other login.

How data flows
  1. 1
    Your LMS

    Monthly loan tape, Excel/CSV or a direct read, inside your network.

  2. 2
    Koshtaq server

    Validates, allocates, stores. PostgreSQL on your VM. Backups on your schedule.

  3. 3
    Your treasury team

    Browser access over your LAN or VPN. Role-based, every action logged.

  4. 4
    Your lenders

    Only the per-lender schedule your team exports and sends. Nothing automatic.

Koshtaq is not offered as a shared, hosted service: every installation runs on servers the customer controls. Results from a live NBFC are in the case study.

02 · Access by role

Three roles. Enforced server-side.

Role claims are checked on every endpoint, not just hidden in the UI.

AdminConfigures lenders, rule groups, users and purges.Full
TreasuryRuns cycles, fixes quarantine, allocates manually, exports.Operate
ViewerRead-only across everything, including the audit log. For auditors and compliance.Read
03 · Audit trail

A record that cannot be rewritten.

A Viewer login for your auditors, and an append-only log of every action with user, timestamp and reason. Numbers that reconcile, month after month.

Time · User · Table
09:41:07priya.ncondition_groups
G7 v3 → v4 · Lender revised CIBIL floor
09:52:30priya.nquarantine
fix · 212 rows · Null state normalised
10:03:12systemallocation_run
Jul-2026 · done · 0 double-pledge
10:18:44r.menontranche_adjust
PSU Bank D · TL-1 · Prepayment received
Append-only · nothing edits or deletes a row

Immutable audit log

Append-only across every table, filterable by table and date: who, what, when, and the reason where one is required. Nothing in the system edits or deletes a log row.

Rule-change protection

Versioned groups plus version-pinned allocations mean a rule change is always attributable and never retroactive.

Quarantine edit trail

Every manual field correction on a quarantined loan is stored separately from the loan itself.

Controlled deletion

Purges run as previewed, confirmed, logged jobs. No silent deletes.

Authentication

JWT sessions with bcrypt-hashed credentials and role claims enforced server-side on every endpoint.

Double-hypothecation lock

A uniqueness constraint in the database on loan and run month. Structurally impossible, not procedurally checked.

04 · Stack & support

Boring in the right places.

A standard stack your IT team already knows how to run, back up and monitor.

Built and supported by KGT Solutions. About KGT Solutions

BackendFastAPI · async SQLAlchemy · PostgreSQL · Redis
FrontendReact · TypeScript · Vite · Tailwind
DeploymentDocker Compose · nginx · your VM or server
TestsSolvers, sticky retention, concentration, availment, imports, state normalisation, analytics queries
3 roles
checked on the server for every request
1 pledge
per loan per month, enforced by the database
Append-only
audit log; no row is edited or deleted
FAQ

Questions IT and compliance teams ask.

Does any of our data reach KGT?
No, not unless your team sends it. Koshtaq runs on your servers and sends nothing to KGT on its own. The only data that leaves your network is the lender schedule your team chooses to send.
Who installs it?
KGT engineers, working with your IT team, on a server or VM inside your network. Koshtaq runs as containers (Docker Compose behind nginx) with a PostgreSQL database that you back up on your own schedule.
How are updates applied?
As versioned releases your IT team deploys, when it chooses. Nothing updates itself.
What happens to our data if we stop using Koshtaq?
Nothing leaves. It is already on your servers, in your database and under your backups, so there is nothing to retrieve from us.
For your IT review

Get the technical brief.

Ask for the technical brief, or send us your security questionnaire.