Page 4400 "SOA Setup"
SalesOrderAgent · Microsoft.Agent.SalesOrderAgent
Across versions
- BC23-28not present
- BC29-30present
Neighbourhood 19 connected objects and pages
SalesOrderAgent · Microsoft.Agent.SalesOrderAgent · captioned “Configure Sales Order Agent” · BC29-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Caption | Configure Sales Order Agent |
| Extensible | false |
| SourceTable | SOA Setup |
| PageType | ConfigurationDialog |
| ApplicationArea | All |
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 |
|---|---|---|---|
| Content | AgentSetupPart | part Page 4310 “Agent Setup Part” | — |
| Identity and monitoring | Display name | Agent Name | Specifies the unique display name for this Sales Order Agent instance. |
| Initials | Agent Initials | Specifies the initials for this Sales Order Agent instance. Maximum 4 characters. | |
| Monitor and process emails | MailEnabled | Email Monitoring | Specifies if the agent should monitor incoming emails and process them. |
| Account | MailboxName |
Specifies the email account that the agent monitors. You need permission to the mailbox to activate the agent. | |
| Folder | MailboxFolder |
Specifies the email folder that the agent monitors. You need permission to the mailbox to activate the agent. | |
| Try it out | SOACreateTask | SOACreateTaskLbl |
Create a new task for the Sales Order Agent by entering the sender, message text, and any attachments. |
| Important | LearnMoreBilling | LearnMoreTxt |
— |
| LearnMoreBillingSecondSetup | LearnMoreTxt |
— | |
| Messages from already registered senders | Review | Known Sender In. Msg. Review | Specifies the type of review required for incoming messages from already registered senders. |
| Messages from unregistered senders | Review | Unknown Sender In. Msg. Review | Specifies the type of review required for incoming messages from unregistered senders. |
| Select only available items | SearchOnlyAvailableItems | Search Only Available Items | Specifies if the agent takes item availability into account when searching for matches to the requested items. |
| Include capable to promise | Incl. Capable to Promise | Specifies whether the agent includes in the search results items that are currently unavailable but can be ordered for a later shipment date. | |
| QuoteSetup | Review quotes when created and updated | Quote Review | Specifies if the agent requests review when a quote is created and updated. |
| Send quotes for confirmation | Send Sales Quote | Specifies whether the agent sends the sales quote to the customer as a PDF attachment before proceeding. When this is off and Make orders from quotes is on, the agent skips the quote stage and sends only the sales order to the customer. | |
| Make orders from quotes | Make orders from quotes | Create Order from Quote | Specifies whether the agent automatically converts sales quotes into sales orders. When Send quotes for confirmation is on, conversion happens after the customer confirms the quote by email. When Send quotes for confirmation is off, the agent converts the quote immediately without sending it to the … |
| Review orders when created and updated | Order Review | Specifies if the agent requests review when an order is created and updated. | |
| Incoming mail | Start Date | Earliest Sync At | Specifies the date from which the agent starts reading emails in the selected mailbox. |
| Analyze attachments | Analyze attachments | Analyze Attachments | Includes attachments when analyzing intent. Supported formats: PDF, PNG, JPG. |
| Mark email as read | Mark email as read | Mark Email As Read | Specifies whether the agent marks emails as read after processing them. |
| AnalyzeNewMessagesGrp | Last sync | LastSync |
Specifies the date and time of the last sync with the mailbox. |
| Processing limits | Daily email limit | DailyEmailLimit |
Specifies the maximum number of emails an agent can process per day. |
| Include a custom signature in the replies | ConfigureEmailSignature | Configure Email Template | Specifies if the agent includes a custom mail signature below the message body when preparing outgoing mails. |
| EmailTemplate | EmailSignatureModifyLbl |
— |
Actions
| Group | Action | ToolTip | Runs |
|---|---|---|---|
| SystemActions | Update | Apply the changes to the agent setup. | |
| Cancel | Discards the changes and closes the setup page. |
Procedures
17 local procedures, no public ones.
Triggers
OnOpenPage, OnAfterGetCurrRecord, OnQueryClosePage
Relations
- source table Table 4325 “SOA 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 4400 “SOA Setup” (14 calls:
ApplySetup → CheckMailboxUnique,ApplySetup → GetInboxEmailCount,ApplySetup → UpdateAgent, …) - Codeunit 4304 “SOA Session Events” (1 call:
ApplySetup → BindUserEvents) - Codeunit 4317 “Agent System Permissions” (1 call:
OnOpenPage → CurrentUserCanManageAgent) - Codeunit 4324 “Agent Setup” (1 call:
OnAfterGetCurrRecord → GetChangesMade) - Codeunit 4413 “SOA Shipment Date Mgt.” (1 call:
VerifyOrderPromisingSetupConfigured → OrderPromisingSetupConfigured) - Codeunit 7771 “Azure OpenAI” (1 call:
OnOpenPage → IsEnabled) - Codeunit 8703 “Feature Telemetry” (1 call:
OnOpenPage → LogUptake) - Codeunit 8894 “Email Account” (1 call:
CheckMailboxExists → GetAllAccounts) - Codeunit 8901 “Email” (1 call:
SetDefaultInboxFolder → GetMailFolders) - Page 8886 “Email Account Wizard” (1 call:
OnAssistEditMailbox → (object)) - Page 99000958 “Order Promising Setup” (1 call:
VerifyOrderPromisingSetupConfigured → (object))
Recent changes
- 2026-09-15 #11383 [SOA] Fix “The Order Promising Setup does not exist.” crash when setting quote quantity (main, BC30, fix)
- 2026-08-26 #10631 Integration/main to releases 29.x 31a860b5 (releases/29.x, BC29, feature)
- 2026-08-22 #10519 SOA - Try it out : agent activation after closing the page (main, BC30, fix)
- 2026-08-21 #10461 [SOA] Uptake Agent Task Message Failed status for outbound replies (main, BC30, feature)
- 2026-08-21 #10458 SOA Setup page tooltips improvement (main, BC30, fix)
- 2026-08-21 #10232 Block unauthorized Sales Order Agent setup access (main, BC30, fix)
- 2026-08-19 #10308 Uptake agent archiving in Sales Order Agent (AB#644549) (main, BC30, feature)
- 2026-07-27 #9708 Enable manual task creation for Sales Order Agent (main, BC30, feature)
Documented on Microsoft Learn
- Expense Agent overview for Business Central
- Payables Agent Overview in Business Central
- Item availability in Sales Order Agent (preview)
- Process sales quotes and orders with Sales Order Agent
- Set up Sales Order Agent
- Sales Order Agent overview
- Supervise Agent Activities in Business Central
Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).
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: "SOA Setup"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.
Evidence 8 sources
- codesrc/Apps/W1/SalesOrderAgent/app/src/Setup/SOASetup.Page.alreleases/29.x @ ea08af5e
- learnExpense Agent overview for Business Central
- learnPayables Agent Overview in Business Central
- learnItem availability in Sales Order Agent (preview)
- learnProcess sales quotes and orders with Sales Order Agent
- learnSet up Sales Order Agent
- learnSales Order Agent overview
- learnSupervise Agent Activities in Business Central