Veralens is prepaid and usage-based. You add funds to a balance, and each job draws from it based on the tokens it uses and the engine you pick. There are no seats or monthly minimums — you pay for what you extract.
Engines and rates
Prices are per 1,000,000 tokens. Input tokens cover your sources, prompt, and schema; output tokens cover the extracted result.
Select the engine per job with the engine field on [POST /jobs/create](/docs/api-reference). If you omit it, jobs use vera-1.0-high.
How a charge works
- Hold on create. When you create a job, Veralens estimates the cost from your input and places a hold on your balance. If the balance can't cover the hold, the request fails with
insufficient_balance. - Settle on completion. When the job finishes, the hold settles to the actual token cost. The job's
usage.costis the amount you were charged. - Refund on failure. If a job fails, its hold is refunded in full — you are never charged for a failed extraction.
Because the hold is an estimate and settlement uses real usage, a completed job's final cost can be slightly lower than the amount initially held.
Adding funds
Open Billing in the dashboard to add funds via Stripe checkout. Balance is credited as soon as the payment completes. You can top up at any time; jobs draw from the balance until it runs out.
Tracking spend
- Every job carries its own
usage:cost(USD),inputTokens, andoutputTokens. - Usage and Billing in the dashboard summarize spend and remaining balance over time.
- Use [
GET /jobs/list](/docs/api-reference) to pull per-job cost for your own reporting.
Controlling cost
- Use
vera-1.0-lowfor high-volume or simpler documents. - Keep sources tight — send only the pages or text you need to extract from.
- Request only the fields you need; a smaller schema means fewer output tokens.