The open source AI-powered procurement operating system
Control every dollar your company spends with AI-driven spend intelligence,
automated vendor management, and multi-provider AI assistant capabilities.
- AI Assistant — Multi-provider LLM support (OpenAI, Anthropic, NVIDIA) with automatic cascading, circuit breaker fallback, RAG over your documents, and semantic caching
- Spend Intelligence — Automated invoice processing, subscription tracking, contract lifecycle management, and spend analytics
- Vendor Management — Centralized vendor directory, risk scoring, performance tracking, and automated renewals
- Approval Workflows — Multi-level approval chains with escalation rules and compliance tracking
- Integrations — Slack, Microsoft Teams, Gmail, QuickBooks, Xero with bi-directional sync
- Forecasting & Analytics — AI-powered spend forecasting, budget tracking, scenario simulation, and anomaly detection
- BYOK (Bring Your Own Key) — Connect your own AI provider keys per tenant with encryption at rest
- Enterprise Ready — RBAC, audit logging, rate limiting, telemetry, metrics, and health checks built in
# Clone and install
git clone https://github.com/kanojiautkarsh-programmer/openprocure.git
cd openprocure
npm install
# Start dependencies (Docker required)
docker compose up -d
# Copy environment and fill in your keys
cp .env.example .env
# Generate Prisma client
npm run db:generate
# Start development
npm run dev.\install.ps1openprocure/
├── apps/
│ ├── api/ # NestJS backend (REST API + Webhooks)
│ └── web/ # Next.js frontend (App Router + Cloudflare)
├── packages/
│ ├── ui/ # Shared UI components (Radix + Tailwind)
│ ├── database/ # Prisma schema + PostgreSQL client
│ ├── shared/ # Zod schemas + shared TypeScript types
│ └── config/ # ESLint + TypeScript shared configs
└── scripts/ # Dev tooling and test setup
| Layer | Technology |
|---|---|
| Backend | NestJS 11, TypeScript, Prisma 6, PostgreSQL + pgvector |
| Frontend | Next.js 15, React 19, Tailwind CSS 4, Framer Motion |
| Auth | Clerk (OAuth, SSO, JWT) |
| AI | OpenAI, Anthropic Claude, NVIDIA — multi-tenant BYOK |
| Queue | BullMQ (Redis) |
| Vector DB | pgvector for RAG embeddings |
| Testing | Jest, Vitest, Supertest, k6 |
| Deploy | Render, Cloudflare Pages, Docker |
User Query → Sanitize → Rate Limit → Token Budget → Classify
→ Embed → Semantic Cache (hit? return) → RAG Retrieval
→ Compress → LLM (cascading: OpenAI → Anthropic → NVIDIA)
→ Guardrails → Response
Each stage is instrumented with OpenTelemetry spans and Prometheus metrics.
OpenProcure is AGPLv3 licensed and open for contributions. See CONTRIBUTING.md and CLA.md for details.
AGPL-3.0-only — see LICENSE. Commercial licenses available for enterprise deployments that require proprietary integration.