metadata
title: OmniParse AI
emoji: 📄
sdk: docker
colorFrom: blue
colorTo: blue
license: mit
tags:
- invoice
- ocr
- ai
- api
- saas
- automation
- finance
- billing
- nextjs
Overview
AI-powered invoice processing SaaS. Upload PDFs or images and extract vendor details, amounts, dates, and line items as structured data. Export to CSV, JSON, or Excel — or integrate via REST API.
Features
- Smart OCR Extraction — AI-powered data extraction with high accuracy
- Duplicate Detection — Automatic flagging of potential duplicate invoices
- AI Chat Assistant — Ask questions about your invoices (Pro+)
- Dashboard — Upload, invoices, analytics, chat, export, profile, settings
- Bank-Level Security — Bcrypt passwords, HttpOnly cookies, rate limiting, activity logging
- REST API — Integrate with ERP systems (Pro+)
- Multi-format Export — CSV, JSON, Excel
- Dark/Light Theme — Smooth animated transition
- Forgot Password — Reset flow for logged-out users
- Responsive — Works on mobile and desktop
Demo Account
- Email:
demo@omniparse.ai - Password:
demo1234 - Plan: Pro (20 seeded invoices)
Tech Stack
- Framework: Next.js 16 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS 4 + shadcn/ui
- Database: SQLite via Prisma ORM
- Auth: Custom session-based (cookies)
- Runtime: Node.js 20 Alpine (Docker)
Deployment
This Space uses a 3-stage Docker build:
- deps — Install npm dependencies
- builder — Generate Prisma client +
next build - runner — Production standalone server on port 7860
The database is automatically initialized on first startup via prisma db push.
API Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /api/auth/login |
Login |
| POST | /api/auth/signup |
Create account |
| POST | /api/auth/logout |
Logout |
| GET | /api/auth/me |
Current user |
| GET | /api/invoices |
List invoices |
| DELETE | /api/invoices |
Delete invoice |
| POST | /api/auth/forgot-password |
Request reset code |
| POST | /api/auth/reset-password |
Reset password with code |
| GET | /api/health |
Health check |