Exos Systems
White paper
Part two · Sept 2026
← Part one

Exos Systems · White paper · Part two of two

Approval Is a Policy: The Architecture

How Exosphere Agentic from Exos Systems enforces operator policy between the agent and the system of record

A per-tool approval setting cannot see a credit's value, the customer's segment or who holds the authority to grant it. This paper shows how Exosphere Agentic enforces approval as operator policy instead: where the policy layer sits, what it evaluates, how a decision reaches the system of record, and what the record proves.

Exosphere Agentic runs on Azure and integrates with the Microsoft AI platform, deployed into the customer's own tenant — so context, data and governance stay where they belong.

From
Glenn Stetson, Chief Growth Officer
Published
September 2026
For
BSS and enterprise architects
Series
Part two of two · Part one: the argument

01 · The claim

The claim, in engineering terms

Every action an agent proposes against a system of record passes through one enforcement point that the operator configures. That point evaluates the action against the operator's rules and returns one of three outcomes: execute within policy, route to the person whose authority covers it, or block. The same rules apply to actions a person initiates through the same path. Each recommendation cites the clause of the operator's own policy it relies on, and every outcome, refusals included, produces one record linking intent, actor, authority, API operation and record.

In Exosphere Agentic that enforcement point is Exosphere, the judgment layer. No system of record is replaced, and Exosphere Agentic is deployed into the operator's own tenant. The operator encodes the authority its people already hold as rules a machine can evaluate. That answers the question Exos's governance field note puts first: what an agent may do, and under what controls.

A billing credit serves as the worked example throughout. It is one illustration of a pattern every loop follows.

“BSS is where mistakes have invoices attached.”

Glenn Stetson · Exos Systems

02 · Architecture

Where the policy layer sits

Exosphere Agentic is an overlay, not a rip-and-replace: systems of record keep recording what happened, and Exosphere shapes what happens next. Governance is not a wrapper on top; it is the layer every agent call passes through (Fig. 1).

Sherpa agents, the role-named agents such as Billing Sherpa and Order Sherpa, are built on the Microsoft AI platform, in Copilot Studio or Microsoft Foundry, inside the operator's tenant. They detect, assemble evidence and propose; they never write on their own authority. Access is controlled per principal and per token scope: only Exosphere holds write scopes on the access layer, so no agent write can bypass it, and an outage stops writes rather than passing them through.

Exosphere, the judgment layer, has four components. A shared entity model gives one identity across the TM Forum Open APIs. Intent-to-capability resolution maps a business intent to the operation that fulfils it, grounded in that model, not guessed from a tool description. Orchestration holds sagas, idempotency and durable state, so a multi-step action can be compensated when a later step fails. Policy and lineage evaluates every proposed action and records the chain from intent to record. An event mesh carries signals in flight, not in batch.

The access layer is Azure API Management: the MCP endpoint, Microsoft Entra ID authentication, quotas, tracing and versioning. Exosphere builds on it, not around it. Systems of record are reached through TM Forum Open APIs.

Complement, not compete: the plumbing is Microsoft's; the judgment is ours. In February 2026, Microsoft's telecommunications industry blog described an agentic BSS platform created with Exos Systems to demonstrate agents built in Copilot Studio. This paper describes the policy layer beneath such agents.

Fig. 1 · Where the policy layer sits
flowchart TB
  subgraph AG["SHERPA AGENTS · MICROSOFT AI PLATFORM"]
    direction LR
    S1["Billing Sherpa"]
    S2["Order Sherpa"]
    S3["Product Sherpa"]
  end
  subgraph EX["EXOSPHERE · THE JUDGMENT LAYER"]
    direction LR
    J1["Shared entity model<br/>one identity across APIs"]
    J2["Intent to capability<br/>grounded, not guessed"]
    J3["Orchestration<br/>sagas · idempotency · state"]
    J4["Policy and lineage<br/>intent to record, provable"]
  end
  subgraph AC["ACCESS LAYER · AZURE API MANAGEMENT"]
    direction LR
    A1["MCP endpoint"]
    A2["Entra ID authentication"]
    A3["Quotas · tracing · versions"]
  end
  subgraph SR["SYSTEMS OF RECORD · UNCHANGED"]
    direction LR
    R1["Billing"]
    R2["CRM and order"]
    R3["Inventory"]
  end
  H["Approver with authority<br/>Microsoft Teams · Sherpa Approvals"]
  AG -->|"proposals with evidence"| EX
  EX -->|"routed decision"| H
  EX -->|"governed tool calls"| AC
  AC -->|"TM Forum Open APIs"| SR
  classDef human stroke:#0077b6,stroke-width:3px
  class H human
  style EX stroke:#0077b6,stroke-width:3px
Policy sits in the path of the call, not in the prompt. Agents propose; Exosphere decides whether the call proceeds, goes to a person or stops; Microsoft's access layer carries it.

Why a toggle or a prompt is not a control

The Microsoft AI platform offers a per-tool approval setting: a tool asks before it runs, or it does not. That is the right primitive for a tool boundary, but by design it cannot see an action's value, the customer's segment, the exposure already committed, or who holds authority for the case. Those are properties of the business, not of the tool.

Instructing the model does not close the gap. Microsoft's documentation for Microsoft Foundry hosted-agent toolboxes notes that the toolbox endpoint does not itself stop a call marked as requiring approval; the agent runtime must pause, show the tool and its arguments, and resume only after approval. A system-prompt instruction to ask is not enforcement. The guidance is scoped to hosted-agent toolboxes; the principle is general: a control has to sit in the path of the call, where it can refuse.

03 · The policy model

Rules enforce. The corpus grounds.

Exosphere separates the rules that decide from the documents that justify.

Rules enforce. The operator writes rules into Exosphere: thresholds set per loop and per commercial exposure, not per model; routing to the approver whose authority covers the case; and hard blocks. Rules are evaluated by Exosphere, not inferred by the agent.

The corpus grounds. The operator's own policy corpus, meaning its credit policy, delegation-of-authority matrix and regulatory obligations, is indexed in Exosphere. Each rule carries the clause it encodes, which the approval card shows when the rule fires; retrieval over the corpus adds the passages that support the recommendation. The audit record keeps both.

For a billing credit, Exosphere resolves the initiating principal, its role and its limit; the action type; the value against its limit; the customer segment; cumulative exposure within the customer contact and over the policy period; any open dispute or bill hold; and any vulnerability flag (Fig. 2). The outcome is execute within policy; route to the approver with authority, who need not be the person in the conversation; or block, with the reason stated. A fact that cannot be resolved is a policy case too; in the illustrative policy below, it goes to a person.

The same rules bind people. A credit that a care rep keys through a screen calling Exosphere is evaluated exactly as one the Billing Sherpa proposes. An agent never gains more latitude than the person it assists, and a person working through Exosphere gets no silent exception. Native BSS screens keep their own entitlements until the operator routes those writes through Exosphere too.

None of this is exotic. ERPNext can reserve submission of a transaction above an authorised value, and over-limit credit exceptions, to designated roles; Odoo's approval rules can stop one person approving two steps. TM Forum's process framework already distinguishes adjustments that policy allows the system to make automatically from those that need management authority, and treats the billing policy itself as a managed artefact (eTOM GB921 v25.5, 1.3.10.4.3 and 1.3.1.8.2). TAM GB929D v26.0 §5.10.3 describes account adjustments made against a “schedule of authorization policies”. Agents change only who proposes.

Fig. 2 · The policy decision for a billing credit
flowchart LR
  P1["Proposal from<br/>Billing Sherpa"]
  P2["Request keyed by<br/>a rep or supervisor"]
  subgraph IN["FACTS RESOLVED BY EXOSPHERE"]
    direction TB
    I0["Initiating principal<br/>role and limit"]
    I1["Action type and loop"]
    I2["Value against limit"]
    I3["Customer segment"]
    I4["Cumulative exposure<br/>contact and period"]
    I5["Open dispute or<br/>bill on hold"]
    I6["Vulnerability flag"]
  end
  C["Operator policy corpus<br/>credit policy · authority matrix"]
  E{"Operator rules"}
  X["Execute within policy"]
  R["Route to the approver<br/>with authority"]
  B["Block, with reason"]
  H["Approver sees the<br/>cited clause"]
  P1 --> E
  P2 --> E
  IN --> E
  E --> X
  E --> R
  E --> B
  R --> H
  C -.->|"cited clause"| H
  classDef exec stroke:#009688,stroke-width:2px
  classDef route stroke:#e68a00,stroke-width:2px
  classDef block stroke:#d93025,stroke-width:2px
  classDef human stroke:#0077b6,stroke-width:3px
  class X exec
  class R route
  class B block
  class H human
One evaluation, three outcomes, whoever initiates. The operator's rules decide; its own corpus grounds the recommendation and supplies the clause the approver sees.
Billing credit policyIllustrative · each operator writes its own
  1. Credit on a charge already credited, or on an account under fraud reviewBlockGrounded in: Credit policy §5.1 (operator's corpus)
  2. Bill on hold for an open dispute, or vulnerability flagRoute → Specialist team leadGrounded in: Credit policy §4.1 (operator's corpus)
  3. Business account · credit above £1,000Route → Named account ownerGrounded in: Enterprise account policy §1.3 (operator's corpus)
  4. Credit above £250, or credits in one customer contact totalling above £400Route → Billing operations managerGrounded in: Authority matrix §3.4 (operator's corpus)
  5. Credit over £25 up to £250, or a second credit within 90 daysRoute → Team leaderGrounded in: Authority matrix §3.2 (operator's corpus)
  6. Consumer account · credit up to £25 · no credit in the last 90 daysExecuteGrounded in: Credit policy §2.1 (operator's corpus)
  7. Anything not matched above, or a fact that cannot be resolvedRoute → Team leaderGrounded in: Authority matrix §3.1 (operator's corpus)
Illustrative values. The first matching rule applies, so block outranks route and route outranks execute. No one approves their own credit or one on an account they are linked to; it passes to the next approver (Authority matrix §1.2, segregation of duties). Agent or person, the evaluation is the same.

04 · The approval path

From proposal to system of record

When policy routes an action to a person, the path is fixed (Fig. 3).

  1. Propose. A Sherpa agent submits a proposal in the Sherpa envelope, with the cited clause. The envelope maps onto the loop: Facts to detect, Assessment to understand, Recommendation to decide, Action to act and Audit to confirm (the Audit field is completed at confirm). Exosphere issues the approval request as a signed, single-use object with an expiry, so an approval binds to exactly those arguments and cannot be replayed or stretched to cover a changed action.
  2. Evaluate. Within policy, the action proceeds to the write. Blocked, it stops, with the reason returned and recorded. Routed, it goes to the approver the policy names.
  3. Reach the approver. Power Automate posts an Adaptive Card in Microsoft Teams showing the envelope and the clause; the same request appears in Sherpa Approvals, the in-app console. The decision is attributed to the authenticated principal who made it. An undecided request lapses at expiry; nothing executes on it.
  4. First decision wins. Later clicks, in either channel, are told the proposal is already decided. Every decision captures a reason.
  5. Re-validate at execution. Before writing, Exosphere re-evaluates policy and re-reads the data the proposal relied on. If a payment has landed, a dispute has opened or the proposal has expired, the approval lapses and the proposal returns for a fresh decision.
  6. Write once. Orchestration sends the write through Azure API Management to the bill or account surface the estate exposes through TMF678 Customer Bill Management or TMF666 Account Management. TMF678 defines no adjustment resource, so the exact operation follows the estate. Orchestration holds the proposal id in durable state as the idempotency key and never issues a second write for it; where the system of record accepts a caller-supplied reference, the proposal id travels with the call.
  7. Report the real outcome. Applied; refused, with the reason the system of record gave; or unconfirmed, when the call was made but its effect could not be established. An unconfirmed write is read back and reconciled before any retry, and is never shown as success.
  8. Write the lineage, described in the next section.

“Detect, understand, decide, act, confirm. The human sits at decide.”

Glenn Stetson · Exos Systems
Fig. 3 · The approval path to the system of record
sequenceDiagram
  autonumber
  participant SH as Billing Sherpa
  participant EX as Exosphere
  participant PA as Power Automate
  participant AP as Approver
  participant AM as Azure API Management
  participant SR as System of record
  SH->>EX: Proposal, envelope and cited clause
  EX->>EX: Evaluate, then issue a signed, single-use, expiring request
  EX->>PA: Approval request for the approver with authority
  PA->>AP: Adaptive Card in Microsoft Teams
  Note over EX,AP: Also shown in Sherpa Approvals. The first decision in either channel wins
  AP-->>PA: Approve, with reason
  PA-->>EX: Decision and approver identity
  EX->>EX: Re-validate policy and data at execution
  EX->>AM: Governed write, once per proposal id
  AM->>SR: Bill or account operation (TMF678 / TMF666)
  SR-->>AM: Real outcome
  AM-->>EX: Applied, refused or unconfirmed
  EX->>EX: Write audit lineage
  EX-->>SH: Outcome and record reference
An approval binds to one exact action, once. The first decision wins, policy and data are checked again at execution, and orchestration writes once per proposal id.

05 · Audit and reversal

One record, from intent to outcome

Without a policy layer, an agent action leaves three disconnected logs: the conversation, the gateway call and the BSS record. Nothing stitches them into one causal chain, and the transcript holding the intent expires. For a regulated operator, that is not an audit trail.

Exosphere writes one immutable record per action, linking:

  • Intent: what was asked, in which loop, by which person or Sherpa agent.
  • Actor and authority: the principal and its token scope, the rule applied, the version of the rules in force and the clause cited.
  • Evidence: the facts as evaluated at decision and again at re-validation.
  • Decision: approver, channel, time and stated reason.
  • API operation: the Open API call, its arguments and its idempotency key.
  • Record: what changed in the system of record, and the outcome it returned.

The record is written by the layer the call passes through, so it does not depend on an agent choosing to log, and blocked actions are recorded too. The transcript can expire; the record still says who decided what, under which authority, on what evidence, and why.

Reversal is a governed action, not an undo button. If a step fails mid-flight, orchestration compensates the completed steps under the original approval. Reversing a completed action later is a new governed action: it passes the same policy evaluation, may need its own approval, and links its record to the original. History is extended, never edited.

“The action lands in the system of record — audited, reversible, attributable.”

Glenn Stetson · Exos Systems

06 · Context

Assembling context

A policy is only as good as the context behind it, and that context is scattered: open disputes, payment behaviour, contract terms, the tone of recent interactions. Whether a customer is content with the service is not a field in any one system. Assembling that picture is semantic work before it is retrieval work. Rules act on facts resolved from systems of record; softer signals such as tone inform the Assessment and the approver's judgment.

Exosphere's entity model is SID-aligned. GB922 Customer v25.5 supplies the relevant ABEs: Customer Bill, Customer Billing Account, Customer Interaction, Customer Problem, and Customer Billing Inquiry & Dispute, still marked preliminary in that release. PartyCreditProfile carries a credit risk rating and a credit score but no credit limit, and SID has no model of per-role approval limits. SID gives the nouns; the limits that decide who may approve what are operator policy, encoded on top.

The facts arrive through the Open APIs:

  • TMF678, whose recommended onHold bill state halts further processing until open issues are resolved: a natural home for a dispute hold;
  • TMF666 BillingAccount, carrying creditLimit and PaymentPlan;
  • TMF717 Customer360, a read-only consolidated picture of the customer;
  • TMF683 Party Interaction, the history behind a sentiment signal;
  • agreement terms linked to the products they govern (GB922 Product v26.0).

Context also changes who decides. A high-value decision on a major business customer routes, by policy, to the named account owner, who knows things about the relationship that no data surface records. Exos's ontology briefing, available on request, sets out its approach to the SID mapping.

07 · Autonomy

Earning autonomy, one action type at a time

Policy fixes where the line sits today; it should not stay there. Exosphere sets autonomy per action type, not per agent or per model, on four rungs defined by what reaches a person (Fig. 4): always approve (every instance); approve above a threshold (instances above it); execute within policy with sampled review (none before execution, a sample afterwards, so measurement continues); and autonomous within policy (only exceptions), with people accountable for the rulebook and whatever it did not foresee.

“Approval is a control. Execution is a cost.”

Glenn Stetson · Exos Systems

Movement is driven by evidence captured at decision time: how often approvers disagree with the recommendation for that action type, and why. A low rate argues for promotion only when decisions carry understood reasons and agree with independent sampled review, because reflex approvals also produce a low rate. A rising rate, a new kind of reason, a policy change or an incident means demotion, by several rungs if warranted. At the top rung no one approves, so reversals, complaints, incidents and sampled-review findings drive demotion. Each move is itself a policy change, made by a named owner and recorded.

This is Exos's method, not established industry practice. It is also the approach a telecom operator executive has argued for: capture in rules the authority staff already exercise, allow the agent to proceed unaided where the evidence supports it, keep a person on everything else, and shift that boundary as the pattern of disagreement becomes clear.

For a maturity statement rather than a capability claim, Exos's ontology briefing takes TM Forum's Autonomous Networks levels (IG1218, with the IG1252 evaluation methodology) as the yardstick. Here they serve by analogy only, since they are defined for network operations (Autonomous Networks whitepaper, Release 1.0, May 2019, §2.2; IG1252, as described in IG1216 v1.3.0). The analogy works best at task level: IG1224 v13.0.0 describes autonomy per task. Decision is shared at L3 and owned by the system from L4, while intent is still shared at L4. So always approve sits near L2, approve above a threshold near L3, and the upper rungs near L4. Because the operator keeps the rules, the ladder stops short of L5.

Fig. 4 · Earning autonomy per action type
flowchart BT
  R1["Always approve<br/>by analogy · AN L2 Partial"]
  R2["Approve above threshold<br/>by analogy · AN L3 Conditional"]
  R3["Execute within policy, sampled<br/>by analogy · AN L4 High"]
  R4["Autonomous within policy<br/>by analogy · AN L4 High, intent still shared"]
  subgraph MV["WHAT MOVES A RUNG"]
    direction TB
    PC["Promote: disagreement low, reasons understood<br/>and sampled review agrees"]
    DC["Demote: disagreement rises, a new reason,<br/>a policy change, an incident or a reversal"]
  end
  R1 -->|"promote"| R2
  R2 -->|"promote"| R3
  R3 -->|"promote"| R4
  R4 -.->|"demote"| R3
  R3 -.->|"demote"| R2
  R2 -.->|"demote"| R1
  R4 -.->|"incident"| R1
  classDef exec stroke:#009688,stroke-width:2px
  classDef route stroke:#e68a00,stroke-width:2px
  classDef human stroke:#0077b6,stroke-width:3px
  class R1 human
  class R2 route
  class R3,R4 exec
Autonomy is earned per action type, and can be lost. Disagreement, its reasons and sampled review drive each move; the Autonomous Networks levels are a yardstick by analogy only.

08 · Standards

Aligned to TM Forum, without inventing a standard

Exosphere is TM Forum native. Fig. 5 and the annex map the billing-credit illustration onto the frameworks as they stand; other loops map to their own processes and Open APIs.

Process. In eTOM GB921 v25.5, 1.3.10.4.3 Authorize Customer Bill Invoice Adjustment sits within 1.3.10.4 Manage Customer Bill Inquiry, and its child 1.3.10.4.3.3 Determine Automated Bill Adjustment decides whether an adjustment can be automated under the policies managed in 1.3.1.8.2 Manage Customer Billing Policy. Estates documented against v22.0 know 1.3.10.4.3 and 1.3.10.4.3.3 as 1.3.11.3 and 1.3.11.3.3.

Applications. Alongside §5.10.3 (adjustments made against authorisation policy), TAM GB929D v26.0 §5.10.2 tracks open disputes to closure and enters an agreed dispute adjustment pending research and approval.

APIs. A billing credit lands on whichever bill or account surface the estate exposes through TMF678 or TMF666; TMF621, TMF656 and TMF724 carry assurance-driven actions. The Open API directory has no dispute, adjustment, approval or promise-to-pay API. The nearest constructs are TMF666 PaymentPlan, TMF728 Dunning Case, TMF696 Risk Management and TMF678 onHold. For a business task that needs a person, TMF701 Process Management comes closest (v4.1 is its latest non-preview release); Exosphere's own approval path is the Teams card and Sherpa Approvals.

Canvas. ODA Canvas Decision Log 0017 defers standard agent implementations and places agents alongside systems of record, with humans checking agent output and steering the loops. The AI Native Canvas design exposes components over MCP, deploys agents as ODA components and audits model interactions through an AI Gateway, but human approval of individual business actions is not yet standardised; a proposed Canvas decision on Interaction Gateway policy enforcement, aligned with GB1087, is still open. Exosphere provides that layer, delivered against each operator's own stack.

Guidance. IG1335 GenAI Checklist v1.2.0 advises, without requiring it, that high-risk applications can warrant a human in the loop. Routing by policy is a proportionate way to act on that advice.

Fig. 5 · The billing-credit loop mapped to TM Forum
flowchart LR
  subgraph DET["DETECT"]
    direction TB
    d1["eTOM 1.3.10.4<br/>bill inquiry"]
    d2["TMF621 · TMF656 · TMF724<br/>assurance signals"]
  end
  subgraph UND["UNDERSTAND"]
    direction TB
    u1["eTOM 1.3.10.4.3.2<br/>inquiry analysed"]
    u2["TMF717 · TMF683 · TMF666<br/>SID Customer ABEs"]
  end
  subgraph DEC["DECIDE"]
    direction TB
    c1["eTOM 1.3.10.4.3<br/>automated or authorised"]
    c2["TAM §5.10.3<br/>authorisation policies"]
    c3["TMF701<br/>nearest construct for a person"]
    c4["Approval limits<br/>operator policy in Exosphere<br/>no TM Forum artefact"]
  end
  subgraph ACT["ACT"]
    direction TB
    a1["TMF678 or TMF666<br/>governed write"]
    a2["TMF678 onHold<br/>bill held while disputed"]
  end
  subgraph CON["CONFIRM"]
    direction TB
    f1["eTOM 1.3.10.4.3<br/>approved adjustment recorded"]
    f2["TAM §5.10.2<br/>tracked to closure"]
  end
  DET --> UND
  UND --> DEC
  DEC --> ACT
  ACT --> CON
  classDef limits stroke:#e68a00,stroke-width:2px,stroke-dasharray:5 4
  class c4 limits
  style DEC stroke:#0077b6,stroke-width:3px
For the billing-credit illustration, every stage has a TM Forum home; approval limits do not. Who may approve what is operator policy, enforced by Exosphere above the APIs.

Next step

Bring your delegation-of-authority matrix. We'll show which approvals become policy, which stay with a person, and what each one costs you today.

Bring one loop's API estate too: we encode the matrix as Exosphere rules against it, and show where each existing approval lands and which clause of your own policy it would cite. Every loop follows the same governed pattern, which is what makes the first one worth starting and the next one cheap to add.

Explore the Exosphere Agentic wiki: the telecom ontology, BSS meets OSS, governed agents and the standards behind them, open to everyone.

Start with one loop. There are many more.

Annex · The loop, mapped

The loop in detail

Fig. 6 shows where each stage's work happens. The table maps each stage to its envelope field and TM Forum artefacts for the billing-credit illustration; other loops map to their own eTOM processes and Open APIs. The mapping is Exos's alignment, since TM Forum defines no approval stage.

Fig. 6 · The loop in detail
flowchart TB
  subgraph DET["DETECT · Facts"]
    direction LR
    d1["Event mesh<br/>in-flight, not batch"] --> d2["Sherpa agent<br/>Copilot Studio · Microsoft Foundry"]
  end
  subgraph UND["UNDERSTAND · Assessment"]
    direction LR
    u1["Shared entity model<br/>intent to capability"] --> u2["Evidence and cited clause<br/>on the proposal"]
  end
  subgraph DEC["DECIDE · Recommendation"]
    direction LR
    c1["Policy and lineage<br/>operator rules"] --> c2["Microsoft Teams card<br/>or Sherpa Approvals"]
  end
  subgraph ACT["ACT · Action"]
    direction LR
    a1["Orchestration<br/>sagas · idempotency · state"] --> a2["Azure API Management<br/>TM Forum Open APIs"]
  end
  subgraph CON["CONFIRM · Audit"]
    direction LR
    f1["Policy and lineage<br/>intent to record"] --> f2["Real outcome on the card<br/>and in Sherpa Approvals"]
  end
  DET --> UND
  UND --> DEC
  DEC --> ACT
  ACT --> CON
  classDef human stroke:#0077b6,stroke-width:3px
  class c2 human
  style DEC stroke:#0077b6,stroke-width:3px
Each stage pairs an Exosphere component with where its work shows up. The person decides in the tool they already use; Exosphere orchestrates either side.
StageSherpa envelopeeTOM (v25.5)TAM (v26.0)Open APIsSID
DetectFacts: what happened, from which signal1.3.10.4 bill inquiry received§5.10.2 open disputes trackedTMF621, TMF656, TMF724Customer Problem; Customer Billing Inquiry & Dispute (preliminary)
UnderstandAssessment: what it means for this customer, with evidence1.3.10.4.3.2 detailed analysis of the inquiry§5.10.3 prior dispute and adjustment historyTMF717, TMF683, TMF666 (creditLimit, PaymentPlan), TMF678Customer Bill; Customer Billing Account; Customer Interaction; PartyCreditProfile
DecideRecommendation: the action, the rule and the cited clause1.3.10.4.3; 1.3.10.4.3.3 automated or not; policy in 1.3.1.8.2§5.10.3 adjustments against authorisation policyTMF701 (v4.1), the nearest construct for a task that needs a personNo approval-limit model: operator policy on top
ActAction: exact operation, arguments, idempotency keyApplied through the estate's bill processes, under the adjustment approved in 1.3.10.4.3§5.10.3 adjustment; §5.10.2 agreed adjustment pending research and approvalTMF678 (onHold), TMF666, TMF621AppliedCustomerBillingChargeAdjustment
ConfirmAudit: outcome, approver, channel, time, lineage1.3.10.4.3 approved adjustments recorded; 1.3.10.4.3.4 Track & Manage§5.10.2 progress tracked to closureTMF678 bill state (validated, onHold)Customer Bill

Sources

References

  1. Glenn Stetson, Agentic BSS Has a Governance Problem Before It Has a Technology Problem, Exos Systems field note, 10 March 2026, exos-systems.com Exos
  2. Exos Systems, Ontology, BSS and OSS, technical briefing, Glenn Stetson, 2 September 2026, available on request Exos
  3. Exos Systems, Complement, not compete, technical briefing part two, 4 September 2026, available on request Exos
  4. Microsoft Tech Community, Telecommunications Industry Blog, The Rise of Agentic BSS in the IQ Era: from Systems of Record to Systems of Outcome, with Rick Lievano, 19 February 2026, techcommunity.microsoft.com Public
  5. Microsoft Foundry documentation, using a toolbox with a hosted agent (approval for MCP tools), updated 29 July 2026, github.com/MicrosoftDocs Public
  6. TM Forum, eTOM GB921 Customer Process Decompositions v25.5 (v22.0 for legacy numbering) TM Forum member
  7. TM Forum, TAM GB929D Application Framework v26.0, §5.10.2 and §5.10.3 TM Forum member
  8. TM Forum, SID GB922 Customer v25.5 and GB922 Product v26.0 TM Forum member
  9. TM Forum, TMF678 Customer Bill Management v5.0, github.com/tmforum-apis Public
  10. TM Forum, TMF666 Account Management v5.0, github.com/tmforum-apis Public
  11. TM Forum, Open API Directory; TMF717 Customer360 v5.0; TMF683 Party Interaction v5.0; TMF701 Process Management v4.1 TM Forum member
  12. TM Forum ODA Canvas, Decision Log 0017, strategy for AI agents, github.com/tmforum-oda Public
  13. TM Forum ODA Canvas, AI Native Canvas design, and its proposed decision on Interaction Gateway policy enforcement (aligned with GB1087), github.com/tmforum-oda Public
  14. TM Forum, Autonomous Networks whitepaper, Release 1.0, May 2019, §2.2, tmforum.org Public
  15. TM Forum, IG1252 AN Levels Evaluation Methodology, as described in IG1216 Maturity Models Governance Guide v1.3.0; IG1224 NaaS Transformation v13.0.0 TM Forum member
  16. TM Forum, IG1335 GenAI Checklist v1.2.0 TM Forum member
  17. ERPNext documentation, Authorization Rule and Credit Limit Public
  18. Odoo 19 documentation, Studio approval rules Public
Figure