Documentation
How to configure an AI provider and process invoices with this platform.
Getting Started
- Go to Settings and pick a cloud provider card (OpenAI, Anthropic, Gemini, or Groq).
- Enter a model name and your API key for that provider.
- Click Test Connection to verify the key works.
- Once the test succeeds, click Save For This Session.
- Go to Upload and drop in one or more invoices (PDF, PNG, JPEG, TIFF).
- Review extracted fields on the Review Queue and approve or correct them.
- Export approved invoices to Excel from the dashboard.
Alternatively, if a local provider (Ollama, LM Studio, llama.cpp) is running and configured by the site operator, or the operator has set an admin fallback key, uploads work without configuring a browser session key.
Supported Providers & API Keys
Configuring Model, API Key & JSON Config
Model— the provider's model identifier, e.g. gpt-4o-mini, claude-sonnet-4-5, gemini-2.0-flash, or llama-3.3-70b-versatile.
API Key — pasted directly into the provider card; toggle the eye icon to confirm what you typed.
JSON Config (optional) — extra provider-specific parameters, e.g. {"temperature": 0.2}. Must be a valid JSON object; invalid JSON is flagged inline and blocks Test Connection.
Security Notice
Your API key
- ✓ never leaves your browser except for requests made to the selected provider
- ✓ is never stored on our servers
- ✓ is removed when your browser session ends
FAQ / Troubleshooting
- "Invalid API key"
- The key was rejected by the provider. Double-check you copied the full key with no leading/trailing spaces, and that it hasn't been revoked or rotated in the provider's console.
- "Model not found"
- The model name doesn't exist or isn't available to your account/tier. Check the exact model identifier in the provider's model list.
- "Quota exceeded"
- Your account has hit its usage/billing limit with the provider. Check your usage dashboard and billing status on the provider's site.
- "Network timeout"
- The provider didn't respond in time. Usually transient — retry. If it persists, check the provider's status page.
- "Rate limited"
- Too many requests in a short window. Wait a moment and try again, or reduce concurrent uploads.