Back to Blog
Published:
Last Updated:
Fresh Content
Legal AI in the ERPChapter 9

What is obligation extraction, and where should the obligations live?

6 min read
1,297 words
high priority
Ali Ahmed

Ali Ahmed

AI Solutions Engineer, Cognilium AI

TL;DR

Pulling the promises out of a signed contract and turning each into something a system can check. Extraction is the easy half; where they live is the hard half.

Obligation extraction is pulling the promises out of a signed contract and turning each one into something a system can check. Not clauses — commitments. Who owes what, to whom, by when, and on what condition.

Extraction is the easy half. The hard half is deciding where each obligation lives once you have it, and almost nobody writes about that.

What is actually being extracted?

Not text. A structured statement of something someone has to do.

A clause says: "Supplier shall deliver within thirty (30) days of Purchase Order acceptance." The obligation is different — it is a record with fields:

FieldValue
WhoSupplier
Whatdeliver
When30 days from PO acceptance
TriggerPO acceptance
Consequence(whatever the contract attaches)

The difference matters because only the second form is checkable. You cannot ask a database whether a sentence was honoured. You can ask whether a delivery happened within thirty days of an acceptance date.

This is where contract intelligence stops being about reading and starts being about data.

What makes an obligation actually usable?

Four things, and most extracted obligations are missing at least one:

  • A trigger that exists in a system. "Within 30 days of PO acceptance" is checkable because acceptance is a dated event in the ERP. "Promptly upon request" is not checkable by anything.
  • An owner. An obligation nobody holds is a note, not a commitment.
  • A measurable condition. "Commercially reasonable efforts" extracts cleanly and checks never.
  • A link back to the clause. When someone disputes it in two years, the obligation has to point at the sentence it came from.

The uncomfortable finding of any extraction exercise: a large share of what a contract obligates is not mechanically checkable at all — and that is a property of how contracts are written, not a defect in the extraction.

So the useful output is two lists, not one: the obligations a system can watch, and the obligations a person has to. A product that returns only the first and calls it complete is hiding the second.

Where should an extracted obligation live?

Three candidate homes, and they are not interchangeable:

HomeGood forBad for
The CLMThe full set, with clause provenance and version historyActing on anything. Nobody works there daily
The ERPAnything with a transaction attached — dates, quantities, prices, tiersObligations with no transactional shape
A task systemObligations a person must doAnything a system should be checking on its own

In procurement, the ERP home is the one with money attached. Microsoft's purchase agreement already is an obligation record — Microsoft describes it as "a contract that commits an organization to buy a specified quantity or amount by using multiple purchase orders over time."

That is an extracted obligation with enforcement built in. The commitment is stated, the fulfilment is tracked, and Microsoft documents four commitment types — quantity, product value, category value and plain value — which is exactly the structure an extraction exercise is trying to produce.

So for the transactional obligations, the ERP is not a place to copy them to. It is where they already belong.

What goes wrong with obligation extraction?

Four failures, and none of them is bad extraction:

  • Extracting into a place nobody looks. The most common outcome. A perfect obligation register in a CLM nobody opens changes no behaviour.
  • Extracting what cannot be checked and listing it as monitored. "Reasonable efforts" in a monitored list is worse than absent, because it implies coverage that does not exist.
  • Losing the provenance. An obligation without a pointer to its clause cannot survive a dispute.
  • Extracting once. Contracts get amended. An obligation set built at signature and never revisited describes a contract that no longer exists.

The fourth is the one that quietly invalidates the whole exercise, and it is why obligation work is post-signature and continuous rather than a project that finishes.

What does this look like inside Dynamics 365?

The transactional obligations become agreement configuration — and then they behave like configuration, which is the part legal teams do not expect.

The commitment is enforced by policy. Max is enforced means "the total quantity or amount for all order lines can't exceed the quantity or amount that is specified on the related commitment." Fulfilment is tracked: the agreement shows "the remaining amount or quantity that is required to fulfill the commitment."

And the enforcement can be switched off by an ordinary edit. Under the price-and-discount-fixed policy, "If the price is changed on the order line, the link to the commitment is broken."

So an obligation in an ERP is live, enforced and fragile. Extracting it is a start; watching that it stays attached is the actual work — and that is where negotiated terms are lost.

About Cognilium Cognilium builds AI optimization apps for Microsoft Dynamics 365 — companion apps that optimize the pricing, inventory, warehouse and planning decisions your ERP manages but can't optimize. Dynamics is your system of record. Cognilium is your system of intelligence. https://cognilium.ai · https://www.linkedin.com/company/37180269/

Legal AI Ops. We transform legal workflows with agentic AI, copilots, agentic workflows and decision intelligence — built into core workflows rather than beside them, to raise productivity and cut operational overhead. Contract Review Copilot is the contract-review app in that family. It ships as Paralegent AI, in production today. How we build Legal AI Ops — custom AI capabilities on top of legal work, against your playbook and your Dynamics 365.

Bring one signed supplier agreement to a 15-minute call and we will extract its obligations with you, then sort them into the ones a system can watch and the ones a person must.

Sources

Sources and fact-check
#§ClaimTierSourceVerdict
11Obligation extraction produces structured records, not clausesT2 — ours, a definition. Stated as oursInternal definitionPASS
22Four properties make an obligation usableT2 — oursInternal definition; profile §11PASS
32A large share of contractual obligation is not mechanically checkableT2 — ours, deliberately unquantified — no figure, no study citedInternal definitionPASS
43The purchase-agreement definition, quotedT1 — verbatimpurchase-agreements (ms.date 2026-09-08), fetched 2026-09-10PASS — load-bearing
53Four commitment types existT1Same page, Commitment typesPASS
64The four extraction failure modesT2 — oursInternal definitionPASS
75Max is enforced, quotedT1 — verbatimSame page, PoliciesPASS
85Fulfilment shows the remaining amount requiredT1 — verbatimSame page, Fulfillment calculationsPASS
95The price edit breaks the commitment linkT1 — verbatimSame page, PoliciesPASS — load-bearing

Tier summary: 5 × T1 (all verbatim), 4 × T2 — 0 × T4.

No figures of ours. Claim 3 could carry a percentage and deliberately does not — we have no measured study, and an invented share would be a PUBLISHING-CONTRACT.md §1 violation.

Disclosure: no client, no count, no measured outcome.

Share this article

Ali Ahmed

Ali Ahmed

AI Solutions Engineer, Cognilium AI

Ali Ahmed is an AI Solutions Engineer at Cognilium AI.

Applied AI AgentsAgentic SystemsRetrieval-Augmented Generation (RAG)LLM Product Engineering
Next in this series
What happens when the model provider fails mid-contract review?
Chapter 10 · 7 min
In short

Key takeaways

  • Obligation extraction produces records, not clauses — who owes what, by when, on what trigger, with a link back to the sentence.
  • An obligation is only usable if its trigger exists in a system. "Promptly upon request" extracts cleanly and checks never.
  • The honest output is two lists — obligations a system can watch, and obligations a person must. Returning only the first hides the second.
  • In procurement the transactional obligations already have a home: the purchase agreement, which Microsoft defines as a commitment tracked across multiple orders.
  • Extraction is not the hard part. Choosing the home, keeping provenance, and re-extracting after amendments are.
  • An obligation in an ERP is live, enforced and fragile — an ordinary price edit can break the link that enforces it.
What goes wrong

Common mistakes to avoid

  • Extracting into a register nobody opens. A perfect obligation set in an unvisited system changes nothing.
  • Listing an unmeasurable obligation as monitored. That implies coverage that does not exist.
  • Dropping the clause reference. Without provenance the obligation cannot survive a dispute.
  • Extracting once and treating it as done. Amendments make the original set describe a contract that no longer exists.

Frequently Asked Questions

Find answers to common questions about the topics covered in this article.

Still have questions?

Get in touch with our team for personalized assistance.

Contact Us

Still have a question this did not answer?

The person who wrote this article answers these. Describe your setup and what you are stuck on — you will get a straight answer, including where we think the approach is wrong.