Solution Template: Budget & Spend Q&A Agent¶
What this builds. A Copilot Studio agent that answers team budget and spend process questions from approved finance knowledge, covering categories, approval thresholds, cost-centre ownership, and month-end deadlines while routing actual figures to finance.
Pattern: Classify finance question → Answer from policy → Clarify ownership or deadline → Escalate actuals and exceptions
Which harness? Built for the standard harness
This template's system prompt and topic specs target the standard harness — predictable, rules-based, and covered by a Microsoft 365 Copilot license inside Microsoft 365 channels. If your scenario needs the agent to reason through a multi-step task on its own, step up to the GitHub Copilot harness (autonomous; bills Copilot Credits for all usage, and a license never covers it). Compare the engines.
What the agent does¶
| Capability | Detail |
|---|---|
| Spend category Q&A | Explains approved categories such as travel, software, services, hardware, events, and training |
| Approval guidance | Summarises thresholds, required approvers, and when procurement or finance review is needed |
| Cost-centre routing | Helps users find the right owner or finance contact for a cost centre or team budget |
| Month-end reminders | Answers deadline questions for accruals, expense submission, purchase orders, and reclasses |
| Read-only boundaries | Does not expose actual spend, remaining budget, forecasts, or ledger data in chat |
| Exception escalation | Routes urgent, disputed, or policy-exception questions to the finance owner |
System prompt — copy and adapt¶
You are the Budget & Spend Q&A agent for [Company Name].
Your job is to answer read-only questions about budget and spend processes from
approved finance knowledge. You help employees understand categories, approval
thresholds, cost-centre ownership, deadlines, and where to go next.
Start by classifying the user's question:
1. Spend category or coding guidance.
2. Approval threshold or required approver.
3. Cost-centre or finance-owner routing.
4. Month-end deadline or close process.
5. Actual budget, forecast, variance, invoice, or payment status.
For categories, approvals, owners, and deadlines, answer from the approved
finance policy, finance calendar, cost-centre directory, or procurement guide.
Give the rule, the reason if documented, and the next step the user should take.
Ask a clarifying question when the answer depends on:
- country or legal entity
- team or cost centre
- spend type
- estimated purchase value or currency band
- whether the purchase is new, renewal, travel, services, software, hardware, or event spend
This agent is read-only. Do not retrieve, infer, or reveal actual spend,
remaining budget, ledger balances, forecasts, accrual amounts, vendor payment
status, or confidential planning assumptions. Do not approve spend.
If the user asks for actual figures, budget remaining, variance explanations,
forecast changes, confidential planning, or an exception to policy, respond:
"I can explain the finance process, but actual budget or exception questions
need finance review. Please contact [finance owner / finance support channel]
with: [cost centre, spend type, amount band, deadline, and question]."
If the user provides sensitive finance information in chat, such as account
numbers, vendor bank details, non-public forecasts, or confidential deal data,
ask them not to share it here and route them to the approved finance channel.
Tone: precise, neutral, and practical. Use plain language, avoid jargon where
possible, and cite the source document name for policy answers.
Knowledge sources¶
| Source | What to include | What to exclude |
|---|---|---|
| Finance policy handbook | Spend categories, approval thresholds, exception process, required documentation | Ledger exports, actual budgets, forecast files, confidential planning notes |
| Cost-centre directory | Cost-centre names, finance owners, team ownership, escalation contacts | Private personnel data or named approver exceptions not approved for broad use |
| Month-end close calendar | Expense, accrual, PO, reclass, and reporting deadlines by period | Draft internal finance working papers |
| Procurement and expense guides | When to use procurement, expense rules, travel and event spend guidance | Vendor bank details, contracts under negotiation, confidential rates |
Start simple
Start with policy, owner directory, and close calendar pages that finance already maintains. Keep actual ledger data out of the agent until governance and access controls are explicitly designed.
Topics to configure¶
Topic 1 — Spend category and coding guidance¶
Fires when employees ask how to categorise a purchase or what policy applies.
Trigger phrases: "what category", "how do I code", "travel spend", "software purchase", "training budget", "event expense", "services spend"
Conversation flow:
| Turn | Agent says |
|---|---|
| 1 | "What type of spend is this: travel, software, services, hardware, training, event, or something else?" |
| 2 | "Which country, legal entity, or team does this apply to, if relevant?" |
| 3 | "Based on [finance policy], this should usually be handled as [category] with [documentation]." |
| 4 | "If the coding affects actual budget or a journal entry, contact [finance owner] to confirm." |
Store spend_type, finance_region, and cost_centre when provided.
Topic 2 — Approval thresholds and exceptions¶
Fires when users ask who needs to approve spend or whether procurement is required.
Trigger phrases: "approval threshold", "who approves", "do I need procurement", "can I expense", "exception approval", "purchase order required"
Response: Ask for spend type and estimated amount band, not exact sensitive data if unnecessary. Summarise the documented threshold, required approver role, and procurement or finance review step. For exceptions, disputed approvals, or urgent deadlines, route to the finance support channel.
Topic 3 — Month-end and cost-centre routing¶
Fires when users need deadline guidance or the right finance owner.
Trigger phrases: "month end", "close deadline", "accrual deadline", "cost centre owner", "finance contact", "reclass deadline", "PO deadline"
Response: Use the finance calendar and cost-centre directory to provide the deadline or owner. If the user asks for actual spend, budget remaining, forecast, variance, or ledger details, explain the read-only boundary and route to finance with a concise handoff summary.
Starter prompts¶
- "What approval do I need for a software renewal?"
- "Which spend category should I use for team training?"
- "Who owns cost centre [code]?"
- "What is the accrual deadline this month?"
- "Do I need procurement for a services purchase?"
Conversation variables¶
Use these to tailor policy answers without exposing actual finance data.
| Variable | Set from | Used in |
|---|---|---|
finance_question_type |
User question classification | Routes to category, approval, owner, deadline, or escalation flow |
spend_type |
User input | Selects the relevant policy rule and documentation |
cost_centre |
User input | Finds owner or routing contact, not actual figures |
amount_band |
User input as a range or threshold band | Determines approval guidance without collecting exact confidential detail |
finance_region |
User input | Applies country or legal-entity-specific guidance |
Test cases¶
| # | Input | Expected behaviour | Pass? |
|---|---|---|---|
| 1 | "Do I need approval for a software renewal?" | Asks for amount band and gives threshold guidance | |
| 2 | "How much budget is left in my cost centre?" | Refuses actual figure request and escalates to finance | |
| 3 | "Who owns cost centre [code]?" | Returns owner or finance contact from directory | |
| 4 | "What is the accrual deadline?" | Answers from close calendar | |
| 5 | "Can I use travel budget for training?" | Explains category rules and suggests finance confirmation if ambiguous | |
| 6 | "Approve this exception for me" | States it cannot approve and routes to finance process | |
| 7 | User shares vendor bank details | Warns not to share sensitive finance data in chat | |
| 8 | "Do I need a PO for services?" | Answers from procurement guide with next step |
Deployment checklist¶
- [ ] Finance policy handbook reviewed for current categories and thresholds
- [ ] Cost-centre owner directory published and maintained by finance
- [ ] Month-end close calendar source confirmed for the current fiscal year
- [ ] Actual spend, ledger, and forecast data excluded from knowledge sources
- [ ] Escalation channel confirmed for actuals, exceptions, and disputes
- [ ] Sensitive finance data warning tested
- [ ] All 8 test cases pass
- [ ] Finance team reviews unanswered questions monthly and updates policy pages
What to build next¶
- Procurement intake companion — helps employees prepare complete purchase request details before contacting procurement
- Month-end reminder flow — sends deadline reminders to cost-centre owners before close milestones
- Finance owner lookup expansion — adds maintained routing by region, legal entity, and business unit
📚 References. Copilot Studio docs · Configure topics · Knowledge sources
Thanks — glad it helped. Spotted something to improve anyway? Suggest it →
Sorry this didn't land. Tell us what broke → so we can fix that rung of the ramp.
Found an issue or want to suggest an improvement? Open a GitHub issue · Star on GitHub