AgenticWebScore
Scan

Commerce Protocols · Recommended · High impact

Agent payment standard support (AP2/ACP/x402/UCP)

The least-implemented surface in the rubric. Accepting an agent payment means choosing a standard and changing a checkout, which is a business decision most sites have not made yet.

  • Recommended
  • High impact
  • Draft standard
Agent payment standard support (AP2/ACP/x402/UCP) — Property, Value
Property Value
Check idpayment-protocols
DimensionCommerce Protocols (15%)
TierRecommended — pool 20 pts
Weight inside tier3
ImpactHigh
MaturityDraft — A published specification that is not yet ratified.
ConditionalYes — scored only on commercial sites
Publishing skillagent-payments
StandardsAP2, ACP, x402, UCP

What the scanner requests

  • /.well-known/ucp
  • /.well-known/ucp.json

It also reads documents it has already fetched: $home.

What is measured

Conditional: reported n/a unless the scanner has already detected a commercial signal (Product/Offer JSON-LD, add-to-cart or buy-now copy, a cart/checkout link). It then fetches /.well-known/ucp plus the policy pages it already holds (/ai-policy, /agent-policy, /pricing, /agentic-commerce, /developers, /docs, /faq), strips their tags and counts distinct signals naming AP2, ACP, x402 or UCP - a reachable UCP manifest and a sentence that grants agent purchasing also count, while a sentence that prohibits it does not - a refusal is classified first and named in the detail as the declared policy it is, never silently counted as support - where two or more signals pass, exactly one is a partial (0.7) and none fails.

Reproduce it yourself

You do not have to take our word for any of this. Run the same measurement against your own domain:

              DOMAIN=shop.example.com
for p in /.well-known/ucp /ai-policy /pricing /docs; do printf '%s: ' "$p"; curl -sL "https://$DOMAIN$p" | grep -Eoi '\b(AP2|ACP|x402|UCP)\b' | sort -u | tr '\n' ' '; echo; done
            

The fix

This is the artifact to ship. It is the complete change, not a description of one.

              <!-- /ai-policy (or /agentic-commerce): declare which agent payment standards you accept -->
<section id="agent-payments">
  <h2>Agent payments</h2>
  <p>Autonomous agents may complete checkout on this site over the standards below.</p>
  <ul>
    <li><strong>AP2</strong> (Agent Payments Protocol, FIDO Alliance): we accept user-signed mandates and
      enforce <code>scope_amount_max</code>, <code>scope_expiry</code> and a merchant allow-list.</li>
    <li><strong>ACP</strong> (Agentic Commerce Protocol, OpenAI + Stripe): checkout sessions and our product
      feed are served from <code>/api/acp/checkout</code>; we remain merchant of record.</li>
    <li><strong>x402</strong> (Coinbase, Linux Foundation): paid endpoints answer
      <code>402 Payment Required</code> with a price and a settlement address in USDC.</li>
    <li><strong>UCP</strong> (Universal Commerce Protocol, Google + Shopify): our capabilities are published
      in <code>/.well-known/ucp</code>.</li>
  </ul>
  <p>Unsigned agents may read the catalogue but cannot create orders; write to
    <a href="mailto:agents@shop.example.com">agents@shop.example.com</a> for sandbox credentials.</p>
</section>
            

Standards referenced

  • AP2
  • ACP
  • x402
  • UCP

Related checks

Related checks — Check, Tier, Impact, Same skill
Check Tier Impact Same skill
product-schema — Product/catalog schemaEssentialCritical—
agent-purchase — Agent purchase policyRecommendedHigh—
ucp-manifest — UCP manifest (/.well-known/ucp)EmergingMedium—
returns — Return and shipping terms machine-readableRecommendedMedium—
agent-analytics — Agent traffic measurementEmergingLow—
inventory-freshness — Inventory and price freshnessRecommendedHigh—
seller-identity — Seller identity declaredRecommendedMedium—
shipping-costs — Shipping cost and delivery declaredRecommendedHigh—