Agent Legal Context
Getting Started

Part 3: Protocol Extensions

Embed contentHash in existing protocol metadata fields using each protocol's native extension mechanisms.

Part 3 binds terms to transactions at the protocol level. Each payment protocol has its own extension mechanism. ALC uses those mechanisms -- no core spec changes to any protocol.


Protocol Extension Points

ProtocolExtension MechanismcontentHash Location
MPPopaque field in 402 challenge + TIP-20 memo32-byte contentHash in challenge and settlement memo
ACPCheckout session metadata{"contentHash": "0x..."} in session
x402Response headersX-Integra-Hash: 0x... header
UCPCryptographic mandate metadata{"contentHash": "0x..."} in mandate
AP2Mandate metadata{"integra-evidence-hash": "0x..."} in all three mandates
Visa TAPAgent intent signature payloadcontentHash as signed data field
A2AAgent Card extensions + task metadata"integra" field in agent card; integra-context-hash in tasks
MCPTool definitionsALC operations as MCP tools
MastercardAgentic Token metadata + SD-JWT claimsintegra_terms_hash as disclosure

None of these require changes to the protocol core specification. All use existing extension, metadata, or header mechanisms.


MPP Integration Example

Challenge (server to agent):

The 402 response includes the contentHash in the opaque field. The terms reference travels with the payment challenge.

Settlement (agent pays):

The TIP-20 transfer carries the contentHash in the 32-byte memo field. The terms are now bound to the payment on-chain.

Verification (any party, any time):

Follow the contentHash from the payment memo to the IntegraRecord to the terms document. Verify by hashing.


ACP Integration Example

Checkout session:

{
  "session_id": "cs_abc123",
  "metadata": {
    "contentHash": "0x7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069"
  }
}

With acceptance required (Tier 2):

Before calling complete_checkout_session, the agent must:

  1. Fetch terms from the API
  2. Sign the EIP-712 TermsAcceptance
  3. Submit the acceptance via POST /v1/records/{recordId}/accept
  4. Then complete the checkout

What You Get at Part 3

CapabilityStatus
Document integrityYes
Machine-discoverable termsYes
Verification APIYes
Per-transaction terms bindingYes -- every payment references specific terms
Explicit acceptance (Tier 2)Yes -- EIP-712 signatures before transaction
Cross-protocol consistencyYes -- same contentHash format across all protocols
Full dispute resolutionNo -- requires Part 4
Escrow / conditional releaseNo -- requires Part 4
NegotiationNo -- requires Part 4

When to Move to Part 4

Part 3 is sufficient for most use cases. Move to Part 4 when you need:

  • Automated dispute resolution -- Pre-defined rules for resolving disputes without human intervention
  • Escrow management -- Conditional payment release based on deliverable verification
  • Negotiation -- Agent-to-agent dynamic terms negotiation (Tier 3)
  • Compliance gating -- Regulatory checks before transactions proceed
  • Multi-party tokenization -- Complex party structures with multiple principals and agents