The production layer for invoices

Composable AI primitives that turn documents, audio, and images into schema-enforced JSON. Trainable. Deterministic. It never guesses.

SOC2SOC 2 Type 2ยทHIPAAHIPAAยทGDPRยท99.99% Uptime SLA
๐Ÿ“„
invoice_Q3_final.pdf
PDF
Ingesting
Structured OutputRouteExtractEnrichValidateSync
VendorAcme Corp
Invoice No.INV-2024-0847
Total$24,500.00
Due Date2024-04-15
Line Items3 items extracted
Accuracy99%
Schema
12 min saved

Engineering teams building production AI trust bem

FleetioPlyAlvysClaspPromptWellVasco AssetsRapideElementFleetioPlyAlvysClaspPromptWellVasco AssetsRapideElement
FleetioPlyAlvysClaspPromptWellVasco AssetsRapideElementFleetioPlyAlvysClaspPromptWellVasco AssetsRapideElement
Your board wants you AI-native.
Your team is drowning in manual work.
Your users expect more.

Still onboarding users by hand with a massive AM team?

Now they self-onboard.

Incoming data
XL
customer_export_final_v3.xlsx
legacy_accounts.csv
FW: Updated vendor list
CompanyPlanLocationsStatus
A
Acme Corp
Enterprise847 locations
Active
T
TechFlow
Growth23 locations
Active
D
DataPrime
Startup3 locations
Active
N
NovaPay
Enterprise112 locations
Active
4 accounts imported

Still making your users manually enter data into your software?

Now it enters itself.

PDF
purchase_order.pdf
bill_of_lading.pdf
INV
invoice_0394.pdf
shipping_update.eml
voicemail.mp3
Orders/PO-2024-8847
Auto-filled
Customer
Summit Logistics LLC
PO Number
PO-2024-8847
Amount
$18,250.00
Ship Date
May 20, 2024
Items
12 line items
Priority
Standard โ–ผ
Warehouse
Dallas, TX โ€” W-07
Contact
J. Rivera ยท (214) 555-0142
Status
Ready for review

Still making your team manually look up GL codes and vendor IDs?

Now it enriches itself.

Extracted Data
vendorSummit Logistics LLC
gl_code5200-FREIGHT
payment_termsNet 30
Enriched from Vendor DB
Summit Logistics LLC
GL Code5200-FREIGHT
Payment TermsNet 30
Match confidence99.4%
Enriched

From messy input to production workflow in hours, not months

Define a schema. Compose a workflow. Ship to production.

Three steps between your first API call and going live โ€” no ML team required.

01Test with your data
02Build workflow
03Deploy
01 ยท Test
Bill-of-Lading ยท 1 result99%
SHIPPERJiangmen Sino-Hongkong Industrial Co.99%
BL NUMBER07924399%
CONSIGNEEAfrican Distribution Company99%
VESSELHapag-Lloyd/CSAV 468T99%
02 ยท Build
โœฆ
International shipping packet! Got a Bill of Lading, Customs Declaration, Payment Receipt, and Release Order. Let me build a workflow to split these out and extract the shipping details you need.
Test results received ยท 4 documents extracted
03 ยท Deploy
Use in Production
cURLPythonNode.js
curl https://api.bem.ai/v2/calls \
ย ย --request POST \
ย ย --form "file=@document.pdf"
or forward toeml_3Adl...@workflow.bem.ai
Agents guess.
AI wrappers break.
bem doesn't.

Deterministic by architecture

Schema-valid output, or it flags the exception.

Schema Definition
FieldTypeStatus
vendorstring Valid
totalcurrency Valid
due_dateISO-8601 Valid
categoryEnum<AP|AR|PO> Flagged
โš 1 field flagged โ€” "category" value not in Enum. Exception routed to review queue.

Trainable, not a black box

Golden datasets. F1 scores. Regression testing.

Accuracy Over Time
92%99.8%
FieldF1 ScoreTrend
vendor0.997Up
total0.994Up
line_items0.988Up

Human-enabling, not human-replacing

Corrections flow back. The system learns.

Extracted Fields
VENDORAcme Corp99%
TOTAL$24,50098%
SHIP_TOWarehouse A72%
User Correction
Warehouse AWarehouse B
Auto-trained on correction โ€” accuracy: 72% โ†’ 99%

See it work.

One file. One workflow. Millions of documents.

Drop a file. bem identifies the document types, builds a production workflow, and extracts every field with per-field confidence scores and hallucination detection. You build the workflow once โ€” it runs forever.

1Upload & Identify
2Split & Route
3Extract
4Enrich & Validate
shipping-packet-extraction ยท v599%
sample-bol.pdf99%
Page 1 of 4

4 pages ยท PDF ยท International shipping packet

Identified: Bill of Lading, Customs Declaration, Payment Receipt, Release Order

4 documents identified and split automatically
Bill of Lading
Page 1 ยท 99%
Customs Declaration
Page 2 ยท 99%
Payment Receipt
Page 3 ยท 98%
Release Order
Page 4 ยท 98%

Split function: split-documents_13 ยท 6.4s runtime

Each document extracted into structured fields with per-field confidence
SHIPPER
Jiangmen Sino-Hongkong Baotian Motorcycle Industrial Co., Ltd ยท 36 Xingye Road, Gaoxin Industrial Development Zone, Jiangmen, Guangdong, China99%
BL NUMBER
07924399%
CONSIGNEE
African Distribution Company ยท 56 Rue Bangalas Poto-Poto, Brazzaville Congo99%
ISSUE DATE
13/05/202299%
VESSEL NAME
HAPAG-Lloyd/CSAV 468T99%
PORT OF LOADING
Port Victoria99%
PORT OF DISCHARGE
Port Victoria98%

CONTAINER DETAILS

SEAL NUMBERGROSS WEIGHT KGCONTAINER NUMBERDESCRIPTION OF GOODS
N193070599%28,00097%NIDU 180101-599%664 CTNS MARCHANDISES DIVERSES98%
Overall: 98.6% confidence0 hallucinations23.6s runtime
Cross-reference extracted data against your systems
CONSIGNEE
African Distribution Company
African Distribution CompanyEnriched
Account #:CUS-4021Payment terms:Net 60Credit status: ApprovedRegion:Central Africa

Enriched from customer database ยท 99.4% match confidence

Workflow: shipping-packet-extraction ยท Version 5

Built once with Forge. Handles any shipping packet layout โ€” no re-planning per vendor.

Try with your own documents โ†’

Production results, not demo magic

Fleetio
โ€œA general principle at Fleetio is that we want to automate things as much as humanly possible. The 2/3 of customer time saved per entry multiplied by the time of a month or a year โ€” it's a lot of time. Totals including line items, they were 100% accurate.โ€

โ€” Product Leader, Fleetio

TransformEvalsSubscriptions
Read the full story
100%

accuracy on complex line item totals

4 min

saved per service entry

67%

reduction in manual data entry time

Ply

Automated RFQ management with AI-powered extraction

Ply uses bem to eliminate manual data entry from their quoting workflow โ€” structuring supplier RFQs into actionable data in seconds.

Read the story
PromptWell

Compliant healthcare adjudication, faster

PromptWell processes medical claims through bem's pipeline with full HIPAA compliance across the entire extraction pipeline.

Read the story

Customers who start with bem stay with bem.

And they grow 4x.

Our average customer expands to 4x their initial usage within the first year. Not because we lock them in โ€” because the platform actually works. Every enterprise customer we have started the same way you will: signed up, sent a document, and saw the result. No procurement process. No 6-week POC. No sales-assisted onboarding required.

Self-serve

Pay as you go

One price per function call, any input type. All primitives included. Volume pricing that decreases as you grow. No platform fees, no minimums, no annual commitments.

100 calls/month included free
Full API access, all file types
No credit card to start
Start building

Most teams ship their first workflow in under an hour

Enterprise

Deploy at scale

Advanced infrastructure for teams processing millions of documents. Procurement support, custom SLAs, and deployment options designed for regulated industries.

Private Link, on-prem, dedicated VPC
SOC 2 Type 2, HIPAA, zero-retention
Volume pricing and custom contracts
Talk to the team

We've done this before โ€” we'll walk you through it

No platform fees ยท No minimums ยท No annual commitments ยท Pricing scales down as you scale up

Stop building parsers.

Start building products.

One API call. Any input type. Schema-valid JSON out. Your team ships the first workflow in under an hour.

Free to start ยท No credit card ยท Ships in hours

cURLPythonNode.js
curl https://api.bem.ai/v2/calls \
  --request POST \
  --header "X-Api-Key: YOUR_KEY" \
  --form "file=@document.pdf" \
  --form "workflowName=my-workflow"
โ†’200 OKยท schema_valid: true ยท confidence: 0.99
bem | The production layer for unstructured data