A202 commercial extension for A2A, version 0.1

This is the extension identifier

https://schemas.a202.org/a2a-ext/commercial/0.1

An A2A agent that declares this URI in its AgentCard states that it exchanges A202 commercial objects (delegated authority, negotiation and transaction state, agreements, and their evidence) as parts of A2A messages, under the rules of the A202 A2A carrier binding.

Specification

Declaration

Declared as one entry in the AgentCard's capabilities.extensions array (binding section 2.1). Activated per request by naming the URI in the A2A-Extensions service parameter (section 2.3). An absent echo is non-activation.

{
  "uri": "https://schemas.a202.org/a2a-ext/commercial/0.1",
  "description": "Exchanges A202 commercial objects (a202-commercial/0.1)",
  "required": false,
  "params": { "spec_version": "a202-commercial/0.1" }
}

Rules the binding pins down

ObjectsOne A202 object per message part. The canonical bytes (RFC 8785, SHA-256) are the object; signatures cover the object and never the framing (section 5).
Task and transactionMany tasks may serve one transaction. Task state does not determine transaction state; only a signed, authorised A202 event moves commercial state. Correlation is by transaction_id in the payload, never by a carrier identifier (section 6).
CapabilityA party may mark the extension required; the check runs at capability negotiation and fails closed on version mismatch (sections 3 and 4).
Declaration is not authorityAdvertising the extension states that the agent speaks A202. Authority to commit is a separate signed mandate chain, checked per act (section 3.4).
Without A2AA plain HTTPS binding for counterparties that do not run A2A is in the same document (section 7).

Versioning

The URI carries the specification minor version. A breaking change to the binding produces a new URI; non-breaking changes are negotiated inside this one through the version declaration in section 4. Schemas the objects validate against are served under /v0.1/.

Status: experimental, adopted through proposal A202-0001. Apache-2.0.