Skip to main content

Extract data from contractual purchase orders

A contractual purchase order is a purchase order that is also a contract. Where a transactional PO is a short instruction to ship goods against agreed prices, a contractual or master PO carries the binding terms on its face: the governing law, the liability cap, the termination and assignment rights, and the minimum commitments that turn an order into an enforceable agreement. Contract managers, procurement lawyers, and contract lifecycle management systems read it for the clauses rather than the line items, because those clauses decide what happens when a delivery fails, when a party wants out, or when a dispute reaches counsel. Its clause set tracks the categories legal review works from, the same ones the Contract Understanding Atticus Dataset (CUAD) annotates and that Uniform Commercial Code Article 2 governs for a US sale of goods: anti-assignment, termination for convenience, cap on liability, minimum commitment, most favored nation, exclusivity, insurance, and audit rights. Dense prose is the problem: these terms do not sit in labeled boxes. A cap on liability might read as a sentence buried in a terms block on page four, an anti-assignment clause is one paragraph among thirty, and a minimum commitment is a number wrapped in a sentence about annual volume. Alongside the clauses, the header still carries the transactional frame, the buyer and supplier, the effective and expiration dates, the reference to a framework agreement, the currency and total, the IBAN and BIC that route payment in EUR or USD, but the value for a legal team is in whether each clause is present, and what it says. Governing law fixes which jurisdiction interprets the rest. Talonic reads the contractual purchase order and returns the parties and dates, the payment and delivery frame, and the commercial clauses as discrete fields, each clause captured with the text that establishes it and tagged to its category. A master PO from Meridian Industries effective 2026-04-01 and expiring 2027-03-31, governed by the laws of Delaware, capping aggregate liability at $250,000 and committing to a $500,000 annual minimum, loads into a contract system with its clause set flagged, so a reviewer reads the terms from structured fields rather than paging through the document. Whether a term is enforceable is not part of the output; the clauses are structured exactly as written.

What gets extracted from contractual purchase orders

PO / Agreement NumberMPO-2026-0087
Effective Date2026-04-01
Expiration Date2027-03-31
BuyerMeridian Industries Inc.
SupplierAcme Components LLC
Governing LawState of Delaware, USA
CurrencyUSD
Total Amount$500,000.00
Cap on LiabilityAggregate liability capped at $250,000
Termination for Convenience30 days written notice
Minimum Commitment$500,000 annual volume
Payment TermsNet 45

How extraction works for contractual purchase orders

Contractual purchase orders come out of procurement and contract lifecycle management systems such as SAP Ariba, Coupa, and Icertis, and reach a reviewer as executed PDFs and scanned signed copies where the binding terms live in prose rather than form fields. Talonic classifies the document and maps it to the contract schema in the Field Registry, which separates the transactional header from the commercial clause set. Buyer, supplier, effective and expiration dates, framework-agreement reference, currency, total, and the IBAN and BIC are captured as structured header fields, while each clause, anti-assignment, termination for convenience, cap on liability, minimum commitment, most favored nation, exclusivity, insurance, and audit rights, is returned with the clause text that establishes it and tagged to its category so a reviewer sees at a glance which terms are present, and the header routes into an ERP or contract repository without re-keying. Governing law is read as its own field because it decides how the rest is interpreted, and the effective and expiration dates land as ISO 8601 values. Confidence scores and pixel-region provenance conform to DIN SPEC 91491, so a contract manager can verify a liability cap or a governing-law clause against the source document. Enforceability is a question for counsel; the extraction returns the clauses exactly as written.

Sample extraction

A master purchase order carrying commercial clauses

{
  "document_number": "MPO-2026-0087",
  "document_date": "2026-03-28",
  "effective_date": "2026-04-01",
  "expiration_date": "2027-03-31",
  "buyer.name": "Meridian Industries Inc.",
  "supplier.name": "Acme Components LLC",
  "reference_number": "MSA-2025-0442",
  "governing_law": "State of Delaware, USA",
  "currency": "USD",
  "total_amount": 500000,
  "payment_terms": "Net 45",
  "incoterms": "FOB Origin",
  "terms_conditions": [
    {
      "term_title": "Limitation of Liability",
      "clause_category": "cap_on_liability",
      "term_text": "Aggregate liability of either party shall not exceed USD 250,000."
    },
    {
      "term_title": "Termination for Convenience",
      "clause_category": "termination_for_convenience",
      "term_text": "Buyer may terminate for convenience on 30 days written notice."
    },
    {
      "term_title": "Minimum Commitment",
      "clause_category": "minimum_commitment",
      "term_text": "Buyer commits to a minimum annual purchase volume of USD 500,000."
    },
    {
      "term_title": "Assignment",
      "clause_category": "anti_assignment",
      "term_text": "Neither party may assign this order without prior written consent."
    }
  ]
}

Frequently asked

How is a contractual purchase order different from a transactional one?

A transactional PO is an instruction to ship goods at agreed prices. A contractual or master PO carries the binding terms on its face: the governing law, liability cap, termination and assignment rights, and minimum commitments. Talonic reads the transactional PO for its line items and the contractual PO for its clauses, on separate schemas.

Which clauses does it capture?

The commercial clause categories a legal team reviews: anti-assignment, termination for convenience, cap on liability, minimum commitment, most favored nation, exclusivity, insurance, and audit rights, each returned with the text that establishes it and tagged to its category.

Does it capture the clause text or just a present-or-absent flag?

Both. Each clause returns with the verbatim text that establishes it, so a reviewer reads what the term actually says rather than trusting a checkbox, and the category tag lets a contract system index it.

Does it tell me whether a clause is enforceable?

No. Talonic structures the clauses as written and returns them with a link to their source region. Whether a term is enforceable is a legal judgment for counsel, not something the extraction decides.

Author note

Reviewed by Talonic engineering · last reviewed 2026-07-07