Page 6942 "Expense Agent Setup API"
ExpenseAgent · Microsoft.ExpenseAgent
Across versions
- BC23-28not present
- BC29-30present
Neighbourhood 4 connected objects and pages
ExpenseAgent · Microsoft.ExpenseAgent · BC29-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| SourceTable | Expense Agent Setup |
| PageType | API |
Fields on this page
Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control’s own, else the bound field’s (marked).
| Group | Control | Shows | ToolTip |
|---|---|---|---|
| General | Id | Rec.SystemId |
— |
| Use Rules | Use Rules | Specifies whether configured expense management rules are applied. from the table field | |
| Allow Submitters to Evaluate Policies | Submitter-run Evaluation | Specifies whether submitters can preventively run policy evaluation before submitting expense reports. This evaluation will consume additional AI credits. from the table field | |
| Enable Agent | Enable Agent | Specifies whether the agent is enabled to process expense submissions from email and calendar. from the table field | |
| Exchange Rate for Expenses | Exchange Rate for Expenses | Specifies which exchange rate to use when converting foreign currency expenses. from the table field | |
| Prepayment-Cash Advance Allowed | Allow Prepayment-Cash Advance | Specifies whether prepayments and cash advances are allowed. from the table field | |
| Allow Grouping of Transactions in Report | Allow Grp. of Trans. in Report | Specifies whether similar transactions are grouped together in expense reports. from the table field | |
| Expense Report Rounding Precision obsolete Pending 29.0; #if not CLEAN29 | Exp. Report Rounding Precision | Specifies the rounding precision for amounts in expense reports. from the table field | |
| Expense Report Rounding Type obsolete Pending 29.0; #if not CLEAN29 | Expense Report Rounding Type | Specifies how amounts are rounded: nearest, up, or down. from the table field | |
| Do Not Allow Expenses Older Than | Do Not Allow Exp. Older Than | Specifies a date formula; expenses older than the resulting date are not allowed. from the table field | |
| If Expense Is Older Than Allowed | If Exp. Is Older Than Allowed | Specifies how the system handles expenses older than the allowed date: warn, require justification, or block submission. from the table field | |
| Check Category/Subcategory Usage | Check Category/SubCat. Usage | Specifies whether both category and subcategory are required on each expense. from the table field | |
| Display Anti-Corruption Attestation | Enable Anti-Corp. Statement | Specifies whether users must confirm an anti-corruption attestation before submitting expenses. from the table field | |
| Expense Reports Nos. | Expense Reports Nos. | Specifies the number series used to create new expense reports. from the table field | |
| Expenses Nos. | Expense Nos. | Specifies the number series used to create expenses. from the table field | |
| Posted Expense Reports Nos. | Posted Expense Reports Nos. | Specifies the number series used for posted expense reports. from the table field | |
| Standard Rate of Mileage | Standard Rate of Mileage | Specifies the default mileage reimbursement rate. from the table field | |
| Default Mileage UOM | Default Mileage UOM | Specifies the default unit of measure for mileage. from the table field | |
| Only Shortest Route | Only Shortest Route | Specifies whether only the shortest route is shown for mileage expenses. | |
| Full Per-Diem Calculations | Full Per-Diem Calculation | Specifies the rule used to calculate full per diem, for example by calendar day or by hours. from the table field | |
| Reduction for Breakfast % | Reduction for Breakfast % | Specifies the percentage deducted from the per diem when breakfast is provided. from the table field | |
| Per Diem Rounding Precision obsolete Pending 29.0; #if not CLEAN29 | Per Diem Rounding Precision | Specifies the rounding precision for per diem amounts. from the table field | |
| Reduction for Lunch % | Reduction for Lunch % | Specifies the percentage deducted from the per diem when lunch is provided. from the table field | |
| Minimum Hours for Per Diem | Minimum Hours for Per Diem | Specifies the minimum number of hours required to qualify for per diem. from the table field | |
| Reduction for Dinner % | Reduction for Dinner % | Specifies the percentage deducted from the per diem when dinner is provided. from the table field | |
| Time Tolerance for Calendar | Time Tolerance for Calendar | Specifies the allowed time deviation when matching calendar events to expenses. from the table field | |
| Expense Report Grouping | Expense Report Grouping | Specifies how expense reports are grouped when they are created automatically. from the table field | |
| Noreply Email Account ID | Noreply Email Account ID | — | |
| Noreply Email Connector | Noreply Email Connector | — | |
| Noreply Email Address | Noreply Email Address | Specifies the noreply email address used for outgoing messages. If empty, the main email account is used. from the table field | |
| System Communication Channel | System Communication Channel | Specifies the identifier or email address used as the system communication channel. from the table field | |
| Inbound Email Address | Email Address | Specifies the inbound email address used by the Expense Agent to receive receipts. Surfaced in service-side notifications such as the welcome email. | |
| Enable Project Fields | Enable Project Fields | Specifies whether project and project task fields are visible in the expense web app for submitters. from the table field | |
| Project Visibility | Project Visibility | Specifies which projects are visible to submitters: only projects assigned to the user, or all active projects. from the table field | |
| Agent Language Code | AgentLanguageCode |
Specifies the language that the agent uses for task details and outgoing messages. | |
| Agent Time Zone | AgentTimeZone |
Specifies the time zone configured for the agent user. | |
| Agent Regional Format ID | AgentRegionalFormatId |
Specifies the regional format (locale) identifier configured for the agent user. | |
| expenseAgentAccessControls | part Page 6984 “Expense Agent Access Ctrl API” | — |
Procedures
1 local procedures, no public ones.
Triggers
OnInit, OnAfterGetRecord
Relations
- source table Table 6930 “Expense Agent Setup”
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 43 “Language” (1 call:
TryGetAgentUserSettings → GetLanguageCode) - Codeunit 4321 “Agent” (1 call:
TryGetAgentUserSettings → GetUserSettings) - Codeunit 6993 “Expense Agent API Validation” (1 call:
OnInit → VerifyAgentAccess)
Recent changes
- 2026-09-04 #10956 [ExpenseAgent] Refactor agent setup for policies (main, BC30, feature)
- 2026-08-04 #9859 [Master] - Move Expense Agent (Preview) app into BCApps (main, BC30, feature, added)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "page", object_name: "Expense Agent Setup API"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.