What we do

extract.json · doc-ai v3

Approved by reviewer · posted to case file

Illustrative document extraction: a paper form is photographed, its layout is detected and five fields are extracted with confidence scores between 0.86 and 0.99. The taxpayer’s name and address are redacted as personal data. The income lines, partly covered by a hand, score 0.86, below the 0.90 threshold, so a reviewer checks them before the result is posted.

Capability 04 of 10AI in the product, not beside it

AI features that show their working, and automation that finishes the job.

AI Product & Automation adds AI to your products and operations: knowledge and retrieval-augmented generation, conversational and vision AI, and workflow automation. Built to be accurate, measured with evals and affordable to run every day.

Typical length
8–14 weeks per feature
Scope
RAG · conversational · vision · automation
Standard
Eval-gated releases

04.1Feature families/families

Four kinds of AI feature. Each one opened up below.

Most of the AI we put into products falls into four families. They share one engineering bar: an eval set before a launch date, a confidence threshold that sends uncertain cases to a person, and a cost per request known from the first prototype.

  • A long library aisle lined with shelves of bound volumes

    01

    Knowledge & RAG

    Answers grounded in your documents, with citations a person can check and access that follows each user’s permissions.

    Typical uses

    • Policy and product assistants for staff
    • Help centres that answer, not only search
    • Contract search with clause-level citations

    Moves

    Deflection rate

    Questions resolved without a ticket

    Inspect a RAG answer
  • A headset with a microphone rests beside an open laptop on a desk

    02

    Conversational AI

    Chat and voice assistants that resolve requests through your systems and hand over to a person with the full context.

    Typical uses

    • Order, booking and account support on web and WhatsApp
    • Voice agents for first-line calls
    • Agent assist: suggested replies and live summaries

    Moves

    Average handle time

    Minutes per resolved conversation

    Watch a handover
  • Hundreds of capped glass bottles move along a conveyor on a bottling line

    03

    Vision & documents

    Extraction, counting and inspection from scans, photos and video, with confidence thresholds and review queues.

    Typical uses

    • Invoice, form and ID extraction into your systems
    • Cap, fill and label checks on a production line
    • Shelf gaps and price-label compliance

    Moves

    Straight-through processing

    Documents posted with no manual touch

    Compare before and after
  • Hands typing on a laptop showing a configuration table of workflow rules

    04

    Workflow automation

    Multi-step processes across email, documents, CRM and ERP, with retries, audit trails and people at the approval gates.

    Typical uses

    • Accounts payable from inbox to posting
    • Customer onboarding and KYC checks
    • Order exceptions and returns

    Moves

    Cycle time

    Hours from trigger to done

    Run a workflow

04.2RAG inspector/inspector

Same question, two pipelines. See why one is right.

Pick a question about a fictional company’s policies and product docs. The baseline is what most first RAG builds look like; the tuned pipeline is what we ship. Open any stage to see what each one retrieved, ranked and wrote, and how it scored.

rag-inspector · your-company-kb · 1,284 docs · 18,402 chunks Illustrative

Questions

text
Sentence not supported by any retrieved chunk
text
Supported, but by a superseded or draft source
1
Citation to a chunk the model was given

QuestionHow long do customers have to return a damaged item?

A

Baseline RAG

  • Fixed 1,000-token chunks
  • Vector search only
  • No reranker
  • Citations optional

queryHow long do customers have to return a damaged item?

No rewrite, no metadata filter.

  1. 1warranty-terms.pdf§4 Defectsoff-topic0.84Manufacturing defects are covered for 12 months from purchase…
  2. 2returns-policy-v2.pdf§3 Damaged itemssuperseded0.82…damaged items may be returned within 30 days of purchase…
  3. 3returns-policy-v4.pdf§2 · 1,000-token chunkcut mid-table0.79…14 days of delivery … exchanges … gift cards … store credit…
  4. 4shipping-faq.mdDelivery problems0.77If your parcel arrives damaged, keep the packaging and…
  5. 5careers-page.mdBenefitsoff-topic0.71Staff discount on returns and exchanges…

No reranker. All five chunks go to the model in vector-score order, off-topic chunks included.

Context sent to the model≈ 5,000 tokens

Customers can return a damaged item within 30 days of purchase.2superseded source They should keep the original packaging.4 Refunds reach the customer’s account in 3 to 5 working days.not in sources

Shown to the user as written

Evals

Faithfulness0.71
Answer relevance0.83
Context precision0.58
Context recall0.67

A

Model only

  • No retrieval
  • No sources
  • No citations

queryHow long do customers have to return a damaged item?

Retrieval switched off. The model answers from what it learned in training, with no access to your documents.

Nothing to rank.

Most retailers accept returns of damaged goods within 30 days, and many extend that for defects covered by warranty. Check the retailer’s own policy for details.ungrounded · no sources

Plausible, generic and unverifiable

Evals

Faithfulnessn/a
Answer relevance0.61
Context precisionn/a
Context recalln/a

B

Tuned RAG

  • Semantic chunks · 300–500 tokens
  • Hybrid BM25 + vector
  • Cross-encoder reranker
  • Citations enforced

rewritedamaged item return window · days from delivery · refund or replacement

filterstatus = current · 1 archived document excluded

  1. 1damaged-goods-sop.docx§1 Intake0.86Support logs the order, the photo and the damage type before…
  2. 2returns-policy-v4.pdf§2.3 Photo evidence0.84Damage reported with a photo within 48 hours skips inspection…
  3. 3returns-policy-v4.pdf§2.1 Damaged on arrival0.83Items that arrive damaged can be returned within 14 days of delivery…
  4. 4shipping-faq.mdDelivery problems0.77If your parcel arrives damaged, keep the packaging and…
  5. 5warranty-terms.pdf§4 Defectsoff-topic0.74Manufacturing defects are covered for 12 months from purchase…

  1. 1returns-policy-v4.pdf§2.1 Damaged on arrivalwas #30.97
  2. 2returns-policy-v4.pdf§2.3 Photo evidencewas #20.91
  3. 3damaged-goods-sop.docx§1 Intakewas #10.62
Context sent to the model≈ 1,100 tokens

Chunks scoring under 0.50 are dropped before generation.

Damaged items can be returned within 14 days of delivery for a replacement or a full refund.1 If the damage is reported with a photo within 48 hours, the inspection step is skipped.2

Grounded · every sentence cited · answered

Evals

Faithfulness0.94
Answer relevance0.92
Context precision0.88
Context recall0.90

QuestionDoes the Pro plan include single sign-on?

A

Baseline RAG

  • Fixed 1,000-token chunks
  • Vector search only
  • No reranker
  • Citations optional

queryDoes the Pro plan include single sign-on?

No rewrite, no metadata filter.

  1. 1sso-setup-guide.mdConfigure SAML0.89Admins on paid plans can connect an identity provider using SAML 2.0…
  2. 2security-whitepaper.pdf§5 Identityoff-topic0.85Customer data is protected by encryption at rest and SSO support…
  3. 3pricing-plans.mdPlan table · 1,000-token chunkcut mid-table0.80| Feature | Pro | Business | Enter… (row cut at the boundary)
  4. 4release-notes-2026-04.mdSign-in0.78Google and Microsoft sign-in now available on every plan…
  5. 5blog-security.mdAnnouncementoff-topic0.73We believe good security should be available to everyone…

No reranker. All five chunks go to the model in vector-score order, off-topic chunks included.

Context sent to the model≈ 5,000 tokens

Yes, single sign-on is available on every paid plan, including Pro.1not in sources Admins connect an identity provider using SAML 2.0 from the security settings.1

Shown to the user as written

Evals

Faithfulness0.68
Answer relevance0.88
Context precision0.52
Context recall0.50

A

Model only

  • No retrieval
  • No sources
  • No citations

queryDoes the Pro plan include single sign-on?

Retrieval switched off. The model answers from what it learned in training, with no access to your documents.

Nothing to rank.

Single sign-on is often reserved for business or enterprise tiers, so the Pro plan may not include it. Contact the vendor’s sales team to confirm.ungrounded · no sources

Plausible, generic and unverifiable

Evals

Faithfulnessn/a
Answer relevance0.55
Context precisionn/a
Context recalln/a

B

Tuned RAG

  • Semantic chunks · 300–500 tokens
  • Hybrid BM25 + vector
  • Cross-encoder reranker
  • Citations enforced

rewritePro plan · SAML single sign-on · included or add-on

filterdoc_type in pricing, docs, release notes

  1. 1sso-setup-guide.mdConfigure SAML0.87Admins on paid plans can connect an identity provider using SAML 2.0…
  2. 2release-notes-2026-06.mdSSO add-on0.85SAML SSO is now available to Pro workspaces as a paid add-on…
  3. 3release-notes-2026-04.mdSign-in0.81Google and Microsoft sign-in now available on every plan…
  4. 4pricing-plans.mdPlans · identity row0.80SAML SSO: Business included · Enterprise included · Pro not included
  5. 5security-whitepaper.pdf§5 Identityoff-topic0.72Customer data is protected by encryption at rest and SSO support…

  1. 1pricing-plans.mdPlans · identity rowwas #40.96
  2. 2release-notes-2026-06.mdSSO add-onwas #20.93
  3. 3sso-setup-guide.mdConfigure SAMLwas #10.71
Context sent to the model≈ 1,100 tokens

Chunks scoring under 0.50 are dropped before generation.

Not by default: SAML single sign-on is included in the Business and Enterprise plans.1 Pro workspaces can add it as a paid add-on, available since June 2026.2

Grounded · every sentence cited · answered

Evals

Faithfulness0.96
Answer relevance0.94
Context precision0.91
Context recall0.92

QuestionCan I carry unused annual leave into next year?

A

Baseline RAG

  • Fixed 1,000-token chunks
  • Vector search only
  • No reranker
  • Citations optional

queryCan I carry unused annual leave into next year?

No rewrite, no metadata filter.

  1. 1employee-handbook.pdf§7 · 1,000-token chunkcut mid-table0.86…annual leave … public holidays … carried forward … sick leave…
  2. 2holiday-calendar-2026.xlsxSheet 1off-topic0.8126 Jan Republic Day · 15 Aug Independence Day · 2 Oct…
  3. 3leave-policy-2025.pdf§3 Carry-oversuperseded0.80Up to 15 days may be carried forward to the next year…
  4. 4payroll-faq.mdLeave encashment0.76Encashment requests are processed with the March payroll…
  5. 5leave-policy-2026.pdf§1 Scope0.74This policy applies to all permanent employees in India…

No reranker. All five chunks go to the model in vector-score order, off-topic chunks included.

Context sent to the model≈ 5,000 tokens

Yes, you can carry forward up to 15 days of annual leave.3superseded source Any days above that are paid out in your final settlement.not in sources

Shown to the user as written

Evals

Faithfulness0.74
Answer relevance0.86
Context precision0.60
Context recall0.55

A

Model only

  • No retrieval
  • No sources
  • No citations

queryCan I carry unused annual leave into next year?

Retrieval switched off. The model answers from what it learned in training, with no access to your documents.

Nothing to rank.

Carry-over rules vary by employer and by local law. Many companies allow five to ten days to be carried forward. Check your HR policy.ungrounded · no sources

Plausible, generic and unverifiable

Evals

Faithfulnessn/a
Answer relevance0.58
Context precisionn/a
Context recalln/a

B

Tuned RAG

  • Semantic chunks · 300–500 tokens
  • Hybrid BM25 + vector
  • Cross-encoder reranker
  • Citations enforced

rewritecarry forward unused annual leave · limit · expiry date · exceptions

filtereffective_year = 2026 · 1 superseded policy excluded

  1. 1leave-policy-2026.pdf§1 Scope0.84This policy applies to all permanent employees in India…
  2. 2hr-portal-guide.mdExceptions0.83Managers can approve a carry-over exception under Requests…
  3. 3leave-policy-2026.pdf§3.2 Carry-over0.82Up to 10 unused days carry over and must be used by 31 March…
  4. 4payroll-faq.mdLeave encashment0.75Encashment requests are processed with the March payroll…
  5. 5holiday-calendar-2026.xlsxSheet 1off-topic0.6926 Jan Republic Day · 15 Aug Independence Day · 2 Oct…

  1. 1leave-policy-2026.pdf§3.2 Carry-overwas #30.98
  2. 2hr-portal-guide.mdExceptionswas #20.88
  3. 3leave-policy-2026.pdf§1 Scopewas #10.57
Context sent to the model≈ 1,100 tokens

Chunks scoring under 0.50 are dropped before generation.

Yes, up to 10 unused days carry over into the next year.1 Carried-over days must be used by 31 March, after which they lapse.1 Your manager can approve an exception in the HR portal.2

Grounded · every sentence cited · answered

Evals

Faithfulness0.95
Answer relevance0.93
Context precision0.89
Context recall0.94

QuestionWhat is the API rate limit on the Team plan?

A

Baseline RAG

  • Fixed 1,000-token chunks
  • Vector search only
  • No reranker
  • Citations optional

queryWhat is the API rate limit on the Team plan?

No rewrite, no metadata filter.

  1. 1rate-limits.mdLimits by plan · 2025superseded0.88Starter 60 · Team 300 · Enterprise custom, requests per minute…
  2. 2api-reference.mdErrors0.84429 Too Many Requests is returned when a limit is exceeded…
  3. 3status-incident-0712.mdPostmortemoff-topic0.80Elevated 429 responses between 14:02 and 14:31 IST…
  4. 4pricing-plans.mdPlan table · 1,000-token chunkcut mid-table0.77| API access | Team | Enterprise | … (row cut at the boundary)
  5. 5sdk-readme.mdRetries0.74The SDK retries idempotent requests with exponential backoff…

No reranker. All five chunks go to the model in vector-score order, off-topic chunks included.

Context sent to the model≈ 5,000 tokens

The Team plan allows 300 requests per minute.1superseded source Requests over the limit return a 429 error.2 Limits reset at the start of every hour.not in sources

Shown to the user as written

Evals

Faithfulness0.70
Answer relevance0.90
Context precision0.62
Context recall0.48

A

Model only

  • No retrieval
  • No sources
  • No citations

queryWhat is the API rate limit on the Team plan?

Retrieval switched off. The model answers from what it learned in training, with no access to your documents.

Nothing to rank.

API rate limits typically range from 60 to 1,000 requests per minute depending on the plan. The provider’s documentation lists the exact figures.ungrounded · no sources

Plausible, generic and unverifiable

Evals

Faithfulnessn/a
Answer relevance0.52
Context precisionn/a
Context recalln/a

B

Tuned RAG

  • Semantic chunks · 300–500 tokens
  • Hybrid BM25 + vector
  • Cross-encoder reranker
  • Citations enforced

rewriteTeam plan API rate limit · requests per minute · burst · 429 Retry-After

filterlatest version per document · changelog included

  1. 1api-reference.mdErrors0.86429 Too Many Requests is returned with a Retry-After header…
  2. 2sdk-readme.mdRetries0.80The SDK retries idempotent requests with exponential backoff…
  3. 3rate-limits.mdLimits by plan · 20260.79Team: 600 requests per minute per workspace, bursts to 1,000 over 10 s…
  4. 4changelog-2026-08.md4 August0.78Team rate limit raised from 300 to 600 requests per minute…
  5. 5status-incident-0712.mdPostmortemoff-topic0.66Elevated 429 responses between 14:02 and 14:31 IST…

  1. 1rate-limits.mdLimits by plan · 2026was #30.97
  2. 2changelog-2026-08.md4 Augustwas #40.94
  3. 3api-reference.mdErrorswas #10.90
Context sent to the model≈ 1,100 tokens

Chunks scoring under 0.50 are dropped before generation.

The Team plan allows 600 requests per minute per workspace, raised from 300 on 4 August 2026.12 Short bursts of up to 1,000 requests over 10 seconds are allowed.1 Requests over the limit return HTTP 429 with a Retry-After header.3

Grounded · every sentence cited · answered

Evals

Faithfulness0.97
Answer relevance0.95
Context precision0.86
Context recall0.93

QuestionWho approves an expense claim over ₹50,000?

A

Baseline RAG

  • Fixed 1,000-token chunks
  • Vector search only
  • No reranker
  • Citations optional

queryWho approves an expense claim over ₹50,000?

No rewrite, no metadata filter.

  1. 1expense-policy-v4-draft.docx§2 Approvals · draftdraft0.87Claims above ₹50,000 need department head sign-off…
  2. 2travel-policy.pdf§6 Hotelsoff-topic0.82Hotel stays above the city cap need prior approval…
  3. 3expense-policy-v3.pdf§2 Approvals0.81Claims above ₹50,000 are approved by the department head…
  4. 4finance-faq.mdReimbursement0.78Approved claims are paid in the next payroll cycle…
  5. 5onboarding-checklist.mdWeek 1off-topic0.72Set up your expense account and corporate card…

No reranker. All five chunks go to the model in vector-score order, off-topic chunks included.

Context sent to the model≈ 5,000 tokens

Expense claims above ₹50,000 are approved by the department head.1draft source Approvals are usually completed within two working days.not in sources

Shown to the user as written

Evals

Faithfulness0.66
Answer relevance0.84
Context precision0.55
Context recall0.46

A

Model only

  • No retrieval
  • No sources
  • No citations

queryWho approves an expense claim over ₹50,000?

Retrieval switched off. The model answers from what it learned in training, with no access to your documents.

Nothing to rank.

Large expense claims are usually approved by a senior manager or the finance department. Your company’s expense policy will name the approver.ungrounded · no sources

Plausible, generic and unverifiable

Evals

Faithfulnessn/a
Answer relevance0.49
Context precisionn/a
Context recalln/a

B

Tuned RAG

  • Semantic chunks · 300–500 tokens
  • Hybrid BM25 + vector
  • Cross-encoder reranker
  • Citations enforced

rewriteapprover · expense claim above ₹50,000 · delegation of authority · current

filterstatus = approved · 1 draft excluded

  1. 1finance-faq.mdReimbursement0.83Approved claims are paid in the next payroll cycle…
  2. 2expense-policy-v3.pdf§2 Approvals0.82Claims above ₹50,000 are approved by the department head…
  3. 3delegation-of-authority.xlsxRow 14 · Expenses0.81₹50,000–₹1,00,000: Finance controller · above ₹1,00,000: CFO…
  4. 4travel-policy.pdf§6 Hotelsoff-topic0.70Hotel stays above the city cap need prior approval…
  5. 5onboarding-checklist.mdWeek 1off-topic0.61Set up your expense account and corporate card…

  1. 1delegation-of-authority.xlsxRow 14 · Expenseswas #30.95
  2. 2expense-policy-v3.pdf§2 Approvalswas #20.93
  3. 3finance-faq.mdReimbursementwas #10.41
Context sent to the model≈ 1,100 tokens

Chunks scoring under 0.50 are dropped before generation.

The sources disagree: the delegation-of-authority matrix names the finance controller for claims of ₹50,000 to ₹1,00,000.1 The expense policy (v3) names the department head.2 I have sent this to Finance operations to confirm, with both sources attached.

Sources conflict · confidence 0.52 < 0.70 · handed to Finance operations

Evals

Faithfulness0.93
Answer relevance0.71
Context precision0.84
Context recall0.88

The four scores

Faithfulness
Share of the answer’s claims that the retrieved context supports.
Answer relevance
How directly the answer addresses the question asked.
Context precision
Whether the relevant chunks are ranked above the noise.
Context recall
Whether retrieval found everything the answer needed.

Metric names as used in open-source RAG evaluation tooling such as Ragas. LLM judges are calibrated against labels from your domain experts before their scores gate a release.

Citations are enforced

Every sentence must point at a chunk the model was given. A check after generation strips or regenerates sentences that do not, and an answer left with no supported sentences is never shown. Superseded and draft documents are filtered out by metadata before search, not left for the model to notice.

Low confidence goes to a person

When sources conflict or retrieval scores fall below threshold, the assistant says so and routes the question, with its sources, to the team that owns the answer. Their reply is logged, and the question joins the golden set the next release is tested against.

04.3Conversational AI/conversation

Conversations that know when to hand over.

The assistant resolves what it is permitted to resolve through your systems. When confidence drops below the line, or the request needs a person, it hands over with the transcript, the intent, the tools it called and a suggested next step.

Illustrative support conversation. A customer reports a cracked blender jug; the assistant looks up the order and books a replacement with confidence 0.93 and 0.88. The customer then reports a duplicate card charge; confidence falls to 0.41, below the 0.60 handover threshold, and refunds need a person, so the assistant hands over to billing support with full context. Priya from billing support reverses the charge. The card number was redacted before logging.

support · conversation 7731
  1. Customer

    My order arrived today but the blender jug is cracked.

  2. Assistant

    Sorry about that. I can see order 48213, delivered this morning. I can send a replacement jug or refund ₹3,499. Which would you prefer?

    orders.lookup · 0.93

  3. Customer

    A replacement, please. Can it arrive before Saturday? It’s a gift.

  4. Assistant

    It can reach you by Friday. I’ve booked the replacement and emailed a free return label for the cracked jug.

    replacements.create · 0.88

  5. Customer

    Also, my card was charged twice for this order. The card is ████ ████ ████ 4242.

  6. Handed to Billing support Confidence 0.41 is under the 0.60 line, and refunds need a person. Transcript, intent, tool calls and a suggested reply attached.
  7. Assistant

    I’ll pass this to our billing team with everything so far, so you won’t need to repeat it. Someone will reply here within a few minutes.

    handover · 0.41

  8. Billing support

    Hi, this is Priya from billing support. I can see the duplicate charge of ₹3,499 and I’ve reversed it. It will show on your statement within 5 to 7 working days.

    Sent by Priya · Billing support

Voice call · order support

Live · 00:41 · barge-in on

  1. CallerHi, I need to change the delivery address for my order.
  2. AssistantOf course. Is that order 48213, arriving on Friday?
  3. CallerYes, that one. Send it to my office instead.
  4. AssistantDone. It will now go to your office address on Friday.

Time to first audio Illustrative

  • Speech-to-text 190 ms
  • LLM first token 310 ms
  • Text-to-speech first audio 220 ms
  • Total 720 ms · target under 800 ms
  • Voice, end to end

    Speech-to-text, the LLM and text-to-speech streamed as one pipeline, with voice activity detection so callers can interrupt. We design to a first-audio target of under about 800 ms.

  • Handover with context

    Thresholds, permissions and topics that always need a person are set per intent. The person who takes over sees the transcript, the intent, the tool calls and a suggested reply.

  • Redaction before logging

    Card numbers, phone numbers and government IDs are masked before transcripts are stored, sent to analytics or reused as evaluation data.

04.4Vision & documents/vision

Vision that counts, reads and checks.

Drag the handle to compare the camera frame with what the model saw. Every detection carries a class and a confidence; anything under the review threshold goes to a person, and their corrections become training data for the next model version.

Illustrative detectionsReview threshold 0.70

Seven dark wine bottles with yellow capsules pass along a conveyor in front of stainless steel tanks
Line 2 · camera 3 · frame 18,204detector v2.3 · edge GPU · 14 ms

7 bottles · 1 diverted · 1 to review

Bottling line: detections per class with precision and recall on the validation set, and the action each one triggers (illustrative)
ClassCountPR
capsule_okPass50.990.98
capsule_skewedDivert to rework10.930.90
fill_lowHuman review · 0.64 < 0.7010.810.86
Precision
Of everything flagged, the share that was right. Low precision wastes people’s time.
Recall
Of the real defects, the share that was caught. Low recall lets problems through.
A chilled supermarket shelf stocked with rows of cartons, bottles and packs above electronic price labels
Store 114 · aisle 6 · photo 09:12detector v1.8 + OCR · phone app · 0.9 s

212 facings · 2 price mismatches · 3 gaps

Retail shelf: detections per class with precision and recall on the validation set, and the action each one triggers (illustrative)
ClassCountPR
facingsPlanogram check2120.970.95
price_tagOCR against the price file640.980.96
price_mismatchTask to store staff20.910.88
gapReplenishment request30.940.92
low_stockHuman review · 0.66 < 0.7010.790.83
Precision
Of everything flagged, the share that was right. Low precision wastes people’s time.
Recall
Of the real defects, the share that was caught. Low recall lets problems through.

Route A

Fine-tuned detector at the edge

A YOLO-family or similar object detector trained on your labelled images, exported to ONNX and run on a camera-side GPU in tens of milliseconds per frame. For counting, inspection and anything that moves on a line.

Frames per secondPrecision and recall per classWorks offline

Route B

Multimodal model for documents

A vision-language model reads layout, tables, stamps and handwriting and returns JSON against a schema, validated before anything posts. Seconds per page, run in your cloud or through a provider with data-processing terms.

Field-level accuracyStraight-through rateSchema validation

Both routes

People review the uncertain cases

A review queue shows the frame, the box and the model’s guess. One click confirms or corrects it. Corrections are versioned as labelled data, and the next model only ships if it beats the current one on the held-out set.

Review queueLabelled dataHeld-out test set

04.5Workflow automation/automation

Automation that runs end to end, with people at the gates.

An invoice arrives by email and leaves as a posted ERP document. Every step is idempotent and retried with backoff, failures land in a dead-letter queue instead of disappearing, and anything over the limit waits for a person. Try approving one.

accounts-payable · workflow v14 · durable execution r-2291 · completed Illustrative
Accounts payable workflow: email trigger, classify, extract, validate with retries, branch on amount, human approval over ₹2,00,000, post to ERP, notify the team, audit record, and a dead-letter queue after three failed retries. yes · over limit no after 3 failed retries retry · backoff 2 s, 4 s, 8 s TRIGGER Email with PDF ap@your-company · 1 PDF CLASSIFY LLM · document type invoice · 0.98 EXTRACT Vision · 12 fields min confidence 0.95 VALIDATE Rules + ERP lookup PO matched · 3-way ok BRANCH Over ₹2,00,000? ₹3,40,000 · yes APPROVAL Finance lead approved · 3 m 02 s POST ERP document 5100042 · idempotent NOTIFY Team channel #ap-approvals · sent AUDIT Run record r-2291 · 14 events DEAD LETTER After 3 retries empty
run console · r-2291
  1. triggeremail received · ap@your-company · inv-88412.pdf
  2. classifyinvoice · 0.98 · small model
  3. extract12 fields · min confidence 0.95
  4. validateERP lookup timed out · retry 1 in 2 s
  5. validatePO 4500123 matched · 3-way match ok
  6. branch₹3,40,000 over ₹2,00,000 · approval required
  7. approvalapproved by Finance lead
  8. postERP document 5100042 · key inv-88412
  9. notify#ap-approvals · message sent
  10. auditrun r-2291 closed · 14 events

Approval gate · ₹3,40,000 · approved by Finance lead

  • 78%Straight-through this week
  • 41 sMedian cycle, no approval
  • 6 · 1Retries · dead-lettered
Recent workflow runs with amount, path, duration, retries and status (illustrative)
RunAmountPathDurationRetriesStatus
r-2291inv-88412.pdf₹3,40,000Approval3 m 08 s1Posted · approved
r-2290inv-88409.pdf₹48,200Straight-through38 s0Posted
r-2289inv-88401.pdf₹1,12,000Straight-through41 s0Posted
r-2288inv-88397.pdf₹2,75,000Approval0Waiting for approval
r-2287inv-88390.pdfDead letter2 m 05 s3ERP unavailable · replayed
  • Idempotent stepsEvery write carries an idempotency key, so a retry never posts twice.
  • Retries with backoffExponential backoff with jitter for timeouts and rate limits; permanent errors fail fast.
  • Dead-letter queueRuns that exhaust retries park with their payload and error, ready to replay after a fix.
  • Audit per runWho approved what, which model version decided, and every input and output, kept per run.

Runs on tools such as

  • n8n
  • Temporal
  • SAP
  • Slack
  • Microsoft Teams
  • Python

Let’s build what happens next.

Tell us what you’re building. We’ll answer straight.

Book a discovery call