Finance input contracts with Jev
Invoice and spend packets arrive as messy descriptions. The ledger, tax engine, and approval matrix still own money. Jev judges policy-fit of the narrative you paste. It does not post journals or calculate tax.
This unofficial page is the input contracts slice of the finance approval decisions pack. Intent: apply the Jev (TypeSafe System One) decision model to finance approval decisions input contracts. Primary search language: Finance Jev input contracts. Confirm patterns on docs.typesafe.ai. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Independent angle (cover ≠ clone): Typed exception + path questions with amounts extracted in code — not a clone of a finance-approvals product page or a rival AP-automation IA.
Finance use-case context
An input contract is the allow-list of fields you will ever POST for finance approval decisions. It is a decision contract for the spend / invoice narrative packet: if a field is not named in instructions, it should not be in state. That is how you beat noisy “dump the object” integrations — the rival-intent failure mode — without cloning anyone’s IA.
Hub: Use cases. Compare, when the other tool is the real job: finance approvals.
Input Contracts inputs
Documented System One inputs: state (string, object, or array of text) and a questions map. English is the primary training language. Images, audio, and video are not accepted.
Allow for finance approval decisions:
{
"packet": { "id": "ap-4401", "memo": "Rush SaaS renewal; vendor changed SKU names.", "vendor": "Acme Cloud" },
"amounts": { "total_band": "5-15k", "currency": "USD", "extracted_ok": true },
"policy": { "sole_source": "Sole-source allowed only with named waiver text.", "rush": "Rush = business-critical outage risk." }
}
Bind paths: packet.memo, policy.sole_source, policy.rush, amounts.total_band.
Refuse at the wrapper (do not send):
- raw PDF bytes or invoice photos (not accepted)
- the full GL dump “just in case”
- bank account numbers — tokenize in the ERP first
TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Decision signals and actions
The contract exists so each primitive stays atomic:
| Id | Type | Job |
|---|---|---|
path |
Choice | catalog / manager / finance_ops / exception / other |
exception_severity |
Score | routine miss → control-breaking |
policy_ok |
Noul | Narrative consistent with policy.* given amounts.total_band? |
If a new CRM field appears, either add a question that names it or drop it. Do not “just include it.” Do not treat a Noul of 0.5 as a “medium” finance approval decisions score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
Contracts are a guardrail: missing required text → do not call Jev (or ask a Noul “is enough information present?”). That is cheaper than a confident wrong path. TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For finance approval decisions, treat auto_approve_under_cap as the high bar (posting an approval or payment instruction). Tune on labels — see offline evaluation.
Evaluation and rollout notes
Version the contract (field list + criteria git SHA) next to the pinned model. Replay path gold, policy-ok gold, and whether a controller would have held the packet when either changes. Pin jev-1.13.0 (the versioned id) after you fit thresholds. jev-latest and the marketing line jev-1.13 can move. Log the response model. TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Official Python and JavaScript SDKs read TYPESAFE_API_KEY and retry documented 429/529. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Pack map
| Slice | Page |
|---|---|
| Graph and primitives | decision workflow |
What may enter state |
you are here |
| What to gather first | evidence collection |
| Atomic rules | policy checks |
| Act / review / abstain | confidence thresholds |
| Reviewer payload | human handoff |
| What to persist | audit trail |
| How it breaks | failure modes |
| Labeled replay | evaluation |
| Shadow → canary | production rollout |
FAQ
What happens if I send the whole warehouse row?
jev-1.13 loses accuracy as distractors grow (official jaggedness note). Drop raw PDF bytes or invoice photos (not accepted). TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Can I send images of the artifact? No. State is text (string, object, or array of text). Transcribe first.
Where is the rest of the Finance pack? Start with Finance decision workflow and Finance evidence collection. Cluster hub: Use cases.
Can Jev replace the ERP approval matrix? No. Hard caps, SoD, and tax stay in finance systems. Jev scores the narrative remainder. See vs finance approvals.
Should we send the invoice image? No. System One state is text. Run OCR/extract elsewhere, then pass bands you trust.
What this page does not claim
- Not a ledger, tax engine, or SOX control.
- No leakage or cycle-time numbers.
- Not official TypeSafe.
- Official TypeSafe status, or that jev.pro issues API keys.
- That a schema-constrained answer is automatically factually correct.
Disclaimer
This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai.
Primary documentation: https://docs.typesafe.ai. Hub: Use cases.
Sources
Public TypeSafe or adjacent documentation only. No private claims.