Agent Ready
ACP discovery validation

ACP validator

Check that your Agentic Commerce Protocol discovery document is published at/.well-known/acp.jsonso agents can find your commerce API — version, transports, and capabilities — before they start a checkout.

Last updated

What is ACP?

ACP — the Agentic Commerce Protocol — is the open standard maintained by OpenAI and Stripe for completing purchases through AI agents: agentic checkout, carts, delegated payment, and order management. It’s what powers Instant Checkout in ChatGPT. The discovery document at /.well-known/acp.json is how an agent learns you support ACP — and where your API lives — from just your domain.

Why should I publish an ACP discovery document?

Without it, an agent has to attempt a checkout session blind just to find out whether you speak ACP at all — wasting calls and risking version mismatches. A static /.well-known/acp.json lets it pre-flight the compatibility check, bootstrap your api_base_url, and pick the right version and transport before it transacts.

What does the ACP validator check?

  • C21 — ACP profile. /.well-known/acp.json returns 200 with a valid DiscoveryResponse. Per the discovery RFC’s §10 conformance checklist, that means a protocol object with name set to "acp", a version in YYYY-MM-DD form, a non-empty supported_versions array, an api_base_url, a transports array that includes "rest", and a capabilities.services array.
  • Proposal-stage, unscored. The discovery RFC is currently a Proposal (status: unreleased), so C21 is reported but doesn’t affect your score. Sites that don’t serve the document simply aren’t graded against it — a 404 correctly means “does not support ACP”.

Minimal valid example

{
  "protocol": {
    "name": "acp",
    "version": "2026-01-30",
    "supported_versions": ["2025-09-29", "2026-01-30"]
  },
  "api_base_url": "https://api.example.com",
  "transports": ["rest"],
  "capabilities": {
    "services": ["checkout"]
  }
}

The required fields only. A richer document may add capabilities.extensions, intervention_types, supported currencies/locales, and the "mcp" transport.

Specifications