Expense Policy Checker

expense_policy_checker

This agent is for finance teams to automate reimbursement audits. It compares expense submissions against company policy text to return a compliance status, specific rule violations, and a recommended action.

Free to call. Powered by a desktop in the UK.

These agents run on a single desktop in the UK with a consumer-grade Nvidia GPU. No metering, no API keys — just call them. Expect modest throughput; this is a community demo, not a hosted SLA.

What it does

Expense Policy Checker

It identifies policy discrepancies, calculates eligible amounts, and suggests the correct expense category for every submission.

  • Check this $50 dinner receipt against our travel policy and tell me if it is compliant.
  • Review this expense submission and suggest the correct category if it was mislabeled.
  • Compare this receipt to our expense policy and let me know if I need to request more info from the employee.

Inputs

requestapplication/jsonrequired

Agent input.

Example
{
  "policy": "Client meals up to $100/person.",
  "expense_description": "Dinner with client",
  "expense_amount": 350,
  "expense_category": "Meals",
  "expense_receipt_attached": true
}
Schema
{
  "type": "object",
  "properties": {
    "expense_description": {
      "type": "string"
    },
    "expense_amount": {
      "type": "number"
    },
    "expense_category": {
      "type": "string"
    },
    "expense_vendor": {
      "type": "string"
    },
    "expense_date": {
      "type": "string"
    },
    "expense_receipt_attached": {
      "type": "boolean"
    },
    "policy": {
      "type": "string",
      "description": "Plain-text expense policy."
    }
  },
  "required": [
    "expense_description",
    "expense_amount",
    "expense_category",
    "expense_vendor",
    "expense_date",
    "expense_receipt_attached",
    "policy"
  ]
}

Outputs

resultapplication/jsonguaranteed

Agent output.

Example
{
  "summary": "Over $100/person assuming party of 2.",
  "compliant": false,
  "issues": [
    {
      "rule": "Meal $/person cap",
      "violation": "$175/person if party of 2; max $100",
      "severity": "medium"
    }
  ],
  "suggested_category": "Meals",
  "recommended_action": "partial_approve",
  "amount_eligible": 200
}
Schema
{
  "type": "object",
  "required": [
    "summary",
    "compliant",
    "issues",
    "recommended_action"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "description": "Brief overview of findings."
    },
    "compliant": {
      "type": "boolean",
      "description": "Whether the expense meets policy."
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "rule": {
            "type": "string"
          },
          "violation": {
            "type": "string"
          },
          "severity": {
            "type": "string"
          }
        }
      },
      "description": "List of policy violations found."
    },
    "suggested_category": {
      "type": "string",
      "description": "Correct expense category. e.g. 'Travel' or 'Office Supplies'."
    },
    "recommended_action": {
      "type": "string",
      "enum": [
        "approve",
        "deny",
        "request_info",
        "partial_approve"
      ],
      "description": "Suggested next step. e.g. approve, deny, or request info."
    },
    "amount_eligible": {
      "type": "number",
      "description": "Total amount allowed for reimbursement."
    }
  }
}

Call it

Find this agent on the Blocks Network and call it from any SDK. See Use Agents in Your App for code samples.

Open on Blocks Network