All Workflows

Travel & Expense Policy Compliance

Seven deterministic T&E policy checks — expense report policy automation in under 30 seconds per claim.

Live demo Drop your T&E claim packs and see Cadel extract every field, run all seven policy checks, and route exceptions — in seconds.

The Problem

Manual expense report policy compliance breaks at scale. A mid-market finance team processing 50–300 T&E claims per month cannot deterministically enforce hotel caps, per-diem limits, receipt thresholds, and airfare rules using email-based approvals and a controller's memory.

Hotel and per-diem overages pass unchecked

A controller reviewing 80 expense reports in a month must recall city-tier ceilings (Rs 8,000/night for Tier-1 cities, Rs 5,000/night for Tier-2) for every hotel line, and per-diem limits (Rs 1,500/day metro, Rs 1,000/day non-metro) for every meal claim. At 5–8 minutes per claim, a batch of 100 claims consumes more than 12 person-hours — with no machine-readable record of which rule was tested and what the outcome was.

Business-class airfare slips through on short routes

The most expensive exception class — a business-class ticket on a 2-hour sector costs Rs 35,000–42,000, versus Rs 4,000–6,000 economy. Without checking airfare_class against route duration on every claim, finance pays the premium automatically. The T&E policy permits an upgrade only when flight duration exceeds 6 hours, but manual approvers rarely verify the sector length before approving.

Missing receipts above the Rs 2,000 threshold

For any claim above Rs 2,000, a receipt is mandatory under Rule 6DD of the Income Tax Rules, 1962 for substantiation purposes and under most corporate T&E policies for reimbursement eligibility. Manual approvers reviewing claim PDFs frequently overlook the receipt_attached flag, paying unsubstantiated amounts that create deduction risk for the company under Section 37(1) of the Income Tax Act, 1961.

Stale submissions disrupt period accruals

When an employee submits a claim 45 days after the trip ends, the expense falls outside the 30-day window required under most T&E policies and disrupts accrual accuracy for the travel period. Finance catching this only at month-end must reopen journal entries or carry the expense in the wrong period — a control deficiency flagged by internal auditors under ICAI SIA 2 (Internal Audit) as a recurring expense-reimbursement weakness in mid-market entities.

18–22%

The share of T&E claims that trigger at least one policy exception in pilot deployments across Sales and Operations teams. Hotel overage and missing receipts are the two most frequent categories. At 100 claims per month, that is 18–22 claims per cycle that require controller intervention — every one of which, without automated detection, is a potential financial leakage or audit exposure under Companies Act 2013 Section 143(3)(i) internal-control reporting requirements.

Why It Matters: Regulatory Framework

Indian T&E compliance sits at the intersection of income-tax substantiation rules, GST input-tax-credit eligibility restrictions, and internal-control standards. A manual approval chain cannot enforce all four frames simultaneously on every claim.

Rule 6DD · Income Tax Rules, 1962

Receipt mandatory above Rs 2,000

Rule 6DD requires documentary evidence (a receipt or voucher) for any cash expenditure above Rs 2,000. Without a valid receipt, the company's deduction claim for the expense under Section 37(1) of the Income Tax Act, 1961 is vulnerable to disallowance in a scrutiny assessment — turning a reimbursement lapse into a tax liability.

Section 17(5)(b) · CGST Act, 2017

ITC blocked on food & accommodation

Input tax credit on food, beverages, and accommodation expenses is blocked under Section 17(5)(b) of the CGST Act for most registered persons unless the expense is on a supply made in the course of business under an obligatory contractual arrangement. The GST component on hotel and meal claims must be excluded from ITC claims during GSTR-2B reconciliation — a filter that requires per-line category tagging, not just an aggregate expense total.

ICAI SIA 2 · Internal Audit Standards

T&E controls are a recurring audit finding

The Institute of Chartered Accountants of India's Standard on Internal Audit 2 (Basic Principles Governing Internal Audit) specifically identifies expense reimbursement controls as a recurring area of control weakness in mid-market entities. The absence of a documented, deterministic policy-check record — not merely the approval email — is the finding an internal auditor raises. An automated check sequence that writes a machine-readable result for every claim satisfies this standard directly.

Section 143(3)(i) · Companies Act, 2013

Statutory auditor must report on internal controls

Under Section 143(3)(i) of the Companies Act, 2013 (read with Rules 11(g) of the Companies (Audit and Auditors) Rules, 2014), the statutory auditor is required to state whether the company has adequate internal financial controls and whether those controls operated effectively during the year. An email-based T&E approval process with no documented policy-check step is a control gap the auditor is required to report on — a gap that automated exception logging closes.

What This Workflow Automates

Seven deterministic passes from expense report PDF to exception queue — in under 30 seconds per claim. Each step produces a structured result an approver, controller, or auditor can trace back to a specific field value and policy rule.

01

Document ingestion & field extraction

Accepts expense report PDFs and extracts all structured fields: employee_id, employee_name, department, expense_category, vendor_name, city_tier, amount_claimed, gst_amount, airfare_class, receipt_attached, trip_start_date, trip_end_date, receipt_date, and submission_date into a structured schema for downstream policy checks.

02

Hotel city-tier cap check

Where expense_category is "Hotel", compares amount_claimed against the applicable ceiling — Rs 8,000/night for Tier-1 cities, Rs 5,000/night for Tier-2 cities — derived from the city_tier field. Claims exceeding the cap are assigned severity FAIL and the overage amount is computed and written to the exception record for the approver's review.

03

Per-diem meal cap check

Where expense_category is "Meals", verifies that the daily amount does not exceed Rs 1,500/day in metro cities or Rs 1,000/day in non-metro cities. Claims for non-meal categories receive an "ignore" result for this check, preserving a clean audit log that distinguishes an explicit skip from an untested check.

04

Airfare class check

Reads the airfare_class field and confirms the value is "Economy". Any other value triggers a FAIL unless the flight duration documented in the claim exceeds 6 hours — the threshold defined in T&E Policy v3.2 for permitting an upgrade. The Rs 38,000 business-class short-haul scenario is a standard test case for this check.

05

Receipt requirement check

For any claim where amount_claimed exceeds Rs 2,000, confirms receipt_attached is true. A FAIL result here blocks the claim from advancing to the approver inbox until the employee uploads a valid receipt, consistent with the documentary evidence requirement under Rule 6DD of the Income Tax Rules, 1962.

06

Submission timeliness check

Computes the interval between trip_end_date and submission_date. Claims submitted more than 30 days after trip end receive a FAIL result; the exact latency in days is written into the exception record to support a waiver decision by Finance. This check catches the accrual-disruption pattern that surfaces as a journal-entry correction at month-end.

07

Duplicate receipt & exception routing

Cross-references each claim's vendor name, amount, and receipt date against all other claims in the current batch. A matching triple raises a WARNING flag for both claims, blocking payment until the AP team manually deduplicates. After all checks complete, compliant claims are routed to the approver inbox and flagged claims to the exception queue, with an Excel export structured for attachment to the month-end close workpapers.

Edge Cases We Simulate

A battery of synthetic test scenarios that exercise every failure mode we have seen in real-world T&E data. Each scenario produces a deterministic outcome an auditor or controller can verify in seconds.

Hotel Over City Cap

What's wrongAcme Applicant (EMP-10519) submits a Tier-1 hotel stay at Acme Marina Suites for Rs 12,500/night, exceeding the Rs 8,000/night Tier-1 ceiling in T&E Policy v3.2.
Expected outcomehotel_within_city_cap fires as FAIL; claim moved to exception queue with the overage amount (Rs 4,500) surfaced in the Excel export; approver must provide written justification before the claim can advance.

Stale Submission

What's wrongAcme Applicant (EMP-10733) submits a Rs 6,200 hotel claim on 21 Jun 2026 for a trip that ended 7 May 2026 — 45 days after trip end, exceeding the 30-day submission window.
Expected outcomesubmission_within_30_days fires as FAIL; the exact latency (45 days) is recorded in the exception queue; claim held pending Finance approval for a policy waiver.

Missing Receipt Above Threshold

What's wrongAcme Applicant (EMP-10844) claims Rs 4,200 for a meal at Acme Skyline Restaurant with receipt_attached = false; the amount exceeds the Rs 2,000 mandatory receipt threshold.
Expected outcomereceipt_required_above_2000 fires as FAIL; claim blocked from approver inbox until a valid receipt is uploaded; exception badge displays category 'Meals' and vendor name.

Business Class Short-Haul Airfare

What's wrongAcme Applicant (EMP-10912) books Acme Air business class on a 2-hour sector at Rs 38,000 — well under the 6-hour duration threshold that would permit an upgrade from economy.
Expected outcomeairfare_class_economy fires as FAIL; the Rs 38,000 claimed amount and 'Business' class value surfaced in the exception row; claim requires CFO-level override per policy.

Duplicate Receipt Detection

What's wrongTwo employees submit claims with the same vendor name, date, and amount — a pattern indicating either a shared expense billed twice or an inadvertent re-submission.
Expected outcomeduplicate_receipt_check cross-references the vendor+amount+date triple across all claims in the batch; both matching claims flagged in the exception queue for manual deduplication before any payment is released.

Weekend / Personal-Day Overlap

What's wrongTrip dates span a Saturday and Sunday without any documented business justification, suggesting the employee extended a business trip to include personal travel at company expense.
Expected outcomeweekend_personal_overlap fires as WARNING; claim routed to exception queue for manager acknowledgement that the weekend days were business-necessary before the hotel cost is approved.

Sample Files & Results

Five seeded expense report PDFs — each engineered to exercise a different policy rule. One passes all checks cleanly; the others each trigger a specific FAIL exception that demonstrates the routing and exception-record logic.

Expense Report · Clean baseline
All checks pass

expense_report_clean.pdf

Acme Applicant (EMP-10428) · Hotel at Acme Grand Hotel · Tier-1 · Rs 7,800/night
Amount₹ 7,800within Rs 8,000 cap
Submission lag8 dayswithin 30-day window
Checks passed5 / 5all active rules

hotel_within_city_cap confirmed Rs 7,800 is within the Rs 8,000 Tier-1 ceiling; receipt_required_above_2000 confirmed receipts attached; submission_within_30_days recorded an 8-day submission interval. Routed directly to the approver inbox with a green status badge.

Expense Report · Hotel over cap
Exception

expense_report_hotel_over_cap.pdf

Acme Applicant (EMP-10519) · Acme Marina Suites · Tier-1 · Rs 12,500/night
Amount₹12,500vs Rs 8,000 cap
Overage₹ 4,50056% excess
CheckFAILhotel_cap

The most operationally significant exception class: a Rs 4,500 per-night overage on a Tier-1 hotel. The workflow surfaces the overage amount explicitly in the exception queue, giving the approver a single-line audit record documenting the breach and the exact amount requiring written justification before payment.

Expense Report · Stale submission
Exception

expense_report_stale_submission.pdf

Acme Applicant (EMP-10733) · Trip end 7 May 2026 · Submitted 21 Jun 2026
Lag45 daysvs 30-day window
Amount₹ 6,200hotel
CheckFAILsubmission_window

Tests date arithmetic and policy-window enforcement. The exact latency (45 days) is written to the exception record, supporting a waiver decision by Finance and providing evidence if the period accrual needs a correcting entry.

Expense Report · Business class
Exception

expense_report_business_class_short_haul.pdf

Acme Applicant (EMP-10912) · Acme Air · Business class · 2-hour sector
Amount₹38,000business class
Duration2 hrsvs 6-hr threshold
CheckFAILairfare_class

Demonstrates the airfare class + duration rule. The Rs 38,000 claimed amount and 'Business' class value are surfaced in the exception row for CFO-level override review; economy equivalent on the same sector runs Rs 4,500–6,000.

Why Automation Wins Here

The Travel & Expense Policy Compliance workflow replaces a manual review process that consumes 5–8 minutes per claim with a deterministic check sequence that completes in under 30 seconds. Every claim receives every applicable test; every result is written to a machine-readable record with the field value, rule threshold, and pass/fail outcome.

12 hrs → 50 min
Controller time on 100-claim monthly batch
< 30 s
Per-claim processing time, all seven checks included
100%
Claims receive every applicable policy check — no manual skips
18–22%
Exception rate in pilots — identified before any payment is released

Financial leakage caught before payment

Hotel overages, short-haul business-class upgrades, and duplicate receipts are the three categories most likely to pass undetected in a manual review cycle. A single business-class short-haul ticket (Rs 38,000) costs more than six economy equivalents; a Tier-1 hotel at Rs 12,500/night carries a Rs 4,500 per-night overage that, multiplied across a sales team traveling weekly, becomes material in a quarter. Automation catches every instance, not the ones the controller remembers to check.

Audit-ready exception record, every claim

The Excel export generated at the end of each batch run has one row per claim, one column per policy check, and each cell contains the result code and evaluator comment (e.g., "Hotel expense of 7,800 is within the 8,000 cap for a Tier-1 city"). This artifact satisfies the documentation requirement under ICAI SIA 2 and supports the internal auditor's sampling procedure without any additional formatting or annotation — attach directly to the month-end close workpapers.

ITC exposure flagged at source

The workflow extracts gst_amount alongside the base amount on every hotel and meal claim, flagging the GST component on blocked categories per Section 17(5)(b) of the CGST Act, 2017 so the AP team can exclude it from ITC claims during GSTR-2B reconciliation. Without per-line category tagging at the time of processing, this exclusion relies on an AP clerk recalling the ITC-blocked categories during the GSTR-2B filing cycle — a step routinely missed under time pressure.

Frequently Asked Questions

The questions finance controllers and internal auditors ask most often before deploying automated T&E policy compliance.

Which documents do I upload?

Upload the employee Travel & Expense (T&E) claim packs as PDFs — one per claim. Each pack carries the employee and trip details, an itemised expense schedule, hotel and airfare detail, the receipt manifest, and the approval block. Cadel classifies each file automatically, so you can drop them together.

Which specific policy rules does the workflow enforce, and where are the thresholds defined?

The workflow runs seven deterministic checks drawn from the T&E Policy v3.2: (1) hotel ceilings of Rs 8,000/night for Tier-1 cities and Rs 5,000/night for Tier-2 cities; (2) per-diem meal caps of Rs 1,500/day in metro locations and Rs 1,000/day non-metro; (3) economy-only airfare unless the flight exceeds six hours; (4) mandatory receipts for any claim above Rs 2,000, consistent with Rule 6DD of the Income Tax Rules, 1962; (5) submission within 30 days of trip end; (6) duplicate-receipt detection by vendor + amount + date; and (7) weekend / personal-day overlap. Thresholds are configurable per entity without code changes.

How does the workflow handle GST on travel expenses, and does it support ITC eligibility checks?

The workflow extracts the gst_amount field from each expense report and records it alongside the base amount in the Excel export. Under Section 17(5)(b) of the CGST Act, 2017, input tax credit on food and beverages and certain accommodation expenses is blocked for most businesses; the workflow flags the GST component on those categories so the AP team can exclude it from ITC claims during GSTR-2B reconciliation. Full automated ITC eligibility determination pairs this workflow with Cadel's GST reconciliation module.

Does the workflow integrate with Tally, SAP, or other ERPs used by mid-market companies?

Validated expense line items and exception summaries are exported as a structured Excel file that maps to standard journal entry formats, making manual import into Tally Prime, SAP Business One, or NetSuite straightforward without a direct API connector. For companies running SAP S/4HANA or Oracle Fusion, Cadel supports file-based and API-based posting; contact your implementation contact for connector availability specific to your ERP version.

What is the audit trail, and does it satisfy internal audit requirements under ICAI standards?

Every claim processed through the workflow generates an immutable log entry recording the extracted field values, the result of each validation check (pass / fail / ignore / not_performed), the timestamp, and the reviewer identity. This log structure supports documentation requirements under ICAI SA 230 (Audit Documentation) and aligns with the evidence retention principles in ICAI SA 500 (Audit Evidence). The exception queue preserves the original submitted values alongside the policy rule that was breached, giving internal auditors a complete before-and-after record.

Can the workflow handle multi-entity or multi-city-tier scenarios where policy limits differ by business unit?

Yes. The city_tier field extracted from each expense report drives the correct cap selection (Tier-1 vs. Tier-2 hotel ceiling; metro vs. non-metro per-diem rate) at the line-item level. For multi-entity deployments — such as a parent company and regional subsidiaries filing separate GST registrations — each entity can be configured with its own T&E policy version, and the approver inbox segregates claims by entity to prevent cross-entity approval errors.

How long does policy validation take compared to a manual review process, and what exception rate should we expect?

For a typical batch of 50 expense reports, automated extraction and all seven validation checks complete in under two minutes, compared to a manual review cycle that commonly runs two to three business days in mid-market finance teams. In pilot deployments covering Sales and Operations departments, roughly 18–22% of claims trigger at least one FAIL exception, with hotel overage and missing receipts being the two most frequent categories; your actual rate will depend on the stringency of your existing policy enforcement culture.

Is my data used to train models?

No. Your documents are processed only to produce this workflow's results and are not used to train any model.