# Agent Ready Checkout: every page > The protocol support matrix for agent checkout: ACP, UCP, AP2, TAP, Agent Pay, x402 and more, by processor, platform and surface, dated and sourced. Edition 2026-11-04. 454 pages. Index: https://agentreadycheckout.com/llms.txt --- title: "Which protocols agents pay with, and where | Agent Ready Checkout" description: "The protocol support matrix for agent checkout: ACP, UCP, AP2, TAP, Agent Pay, x402 and more, by processor, platform and surface, dated and sourced." canonical: https://agentreadycheckout.com/ site: "Agent Ready Checkout" last_updated: 2026-11-04 section: "Matrix" --- # Which protocols agents pay with, and where | Agent Ready Checkout > The protocol support matrix for agent checkout: ACP, UCP, AP2, TAP, Agent Pay, x402 and more, by processor, platform and surface, dated and sourced. Source: https://agentreadycheckout.com/ Site: Agent Ready Checkout Last reviewed: 2026-11-04 # Protocol support matrix: how agents pay - **23** live - **12** pilot - **57** announced - **3** not supported - **229** no statement found Live or pilot cells sit in 17 of 27 columns; the bar counts all 324 cells. The pay-layer check we recommend is [Ora](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=home), with 6 Payments checks [mapped to the matrix](https://agentreadycheckout.com/method/ora-payments-layer). In short As of 4 Nov 2026, 95 of 324 cells in the matrix carry a stated status: 23 live, 12 pilot, 57 announced and 3 not supported. The other 229 read no statement found. Every cell has a source and a read date. Use the rules tracker for who carries the dispute and the decision guide for your platform. ## 12 protocols against 27 columns - live - pilot - announced - not supported or no statement found | Column group | Processors | Platforms | Retailers | Agent surfaces | | --- | --- | --- | --- | --- | | Protocol or program | Stripe | Adyen | PayPal | Checkout.com | Braintree | Worldpay | Coinbase | Crossmint | Skyfire | PayOS | Shopify | BigCommerce | Salesforce CC | Adobe Commerce | commercetools | WooCommerce | Amazon | Walmart | Target | Etsy | Wayfair | ChatGPT | Google AI Mode | Perplexity | Amazon Rufus | Meta Muse | Copilot | | ACP | live 2026-11-04 | pilot 2026-11-04 | live 2026-11-04 | pilot 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no support 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no support 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | | UCP | live 2026-11-04 | pilot 2026-11-04 | live 2026-11-04 | pilot 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | pilot 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | live 2026-11-04 | pilot 2026-11-04 | no support 2026-11-04 | announced 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | live 2026-11-04 | | AP2 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | pilot 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | | Visa TAP | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | pilot 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | | Visa IC | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | pilot 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | | Mastercard Agent Pay | announced 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | pilot 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | | Agent Pay for Machines | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | pilot 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | | Amex ACE | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | | x402 | live 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | | MPP | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | | Link for agents | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | announced 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | live 2026-11-04 | no statement 2026-11-04 | | Verifiable Intent | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | pilot 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | no statement 2026-11-04 | | | | Live or pilot, count | 5 | 2 | 2 | 7 | 2 | 0 | 2 | 5 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | Edition 4 Nov 2026. Protocols and programs down, processors, platforms, retailers and agent surfaces across; the date under each status is the day its source was read, and each status links to the cell's note and source. Scroll the matrix sideways. The last row counts protocols that are live or pilot in each column. [The full matrix with every note](https://agentreadycheckout.com/matrix), [the edition page with charts](https://agentreadycheckout.com/matrix/2026-11-04), [the data](https://agentreadycheckout.com/data). ## Status counts per column Each column of the matrix as a bar of 12 cells, in the same order as the grid above. The figure over a bar counts the live and pilot cells. - live - pilot - announced - not supported - no statement found Cells per column by status, 12 protocols deep, read 4 Nov 2026. Live and pilot cells sit on 17 of 27 columns. Counts per column as a table | Column | Group | Live | Pilot | Announced | Not supported | No statement found | | --- | --- | --- | --- | --- | --- | --- | | Stripe | processor | 5 | 0 | 5 | 0 | 2 | | Adyen | processor | 0 | 2 | 7 | 0 | 3 | | PayPal | processor | 2 | 0 | 2 | 0 | 8 | | Checkout.com | processor | 0 | 7 | 1 | 0 | 4 | | Braintree | processor | 2 | 0 | 1 | 0 | 9 | | Worldpay | processor | 0 | 0 | 5 | 0 | 7 | | Coinbase | processor | 1 | 1 | 2 | 0 | 8 | | Crossmint | processor | 5 | 0 | 3 | 0 | 4 | | Skyfire | processor | 0 | 0 | 3 | 0 | 9 | | PayOS | processor | 0 | 0 | 2 | 0 | 10 | | Shopify | platform | 1 | 0 | 1 | 0 | 10 | | BigCommerce | platform | 0 | 1 | 0 | 0 | 11 | | Salesforce CC | platform | 1 | 0 | 3 | 0 | 8 | | Adobe Commerce | platform | 0 | 0 | 3 | 0 | 9 | | commercetools | platform | 1 | 0 | 1 | 0 | 10 | | WooCommerce | platform | 0 | 1 | 1 | 0 | 10 | | Amazon | retailer | 0 | 0 | 0 | 2 | 10 | | Walmart | retailer | 0 | 0 | 1 | 0 | 11 | | Target | retailer | 1 | 0 | 0 | 0 | 11 | | Etsy | retailer | 1 | 0 | 3 | 0 | 8 | | Wayfair | retailer | 0 | 0 | 1 | 0 | 11 | | ChatGPT | agent surface | 0 | 0 | 2 | 1 | 9 | | Google AI Mode | agent surface | 1 | 0 | 3 | 0 | 8 | | Perplexity | agent surface | 0 | 0 | 1 | 0 | 11 | | Amazon Rufus | agent surface | 0 | 0 | 0 | 0 | 12 | | Meta Muse | agent surface | 1 | 0 | 1 | 0 | 10 | | Copilot | agent surface | 1 | 0 | 5 | 0 | 6 | ## Featured ranking, read 8 Nov 2026 [**The best AI readiness tools for 2026, ranked on the pay layer**](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). Ora, Cloudflare's isitagentready, Is Agentic, StartupHub and Agent Ready scored on five published questions and ten points, every cell from the scanner's own page; Ora scores 10. ## 360 checks, one large seller a day - 15 Nov 2026 [**Zara**](https://agentreadycheckout.com/blog/zara-agent-readiness): 8 of 100 on Ora, pay layer did not apply. - 14 Nov 2026 [**Uniqlo**](https://agentreadycheckout.com/blog/uniqlo-agent-readiness): 7 of 100 on Ora, pay layer did not apply. - 13 Nov 2026 [**Lululemon**](https://agentreadycheckout.com/blog/lululemon-agent-readiness): 15 of 100 on Ora, pay layer did not apply. [All 66 checks](https://agentreadycheckout.com/blog), the pay layer first. ## Changelog, latest three lines - 4 Nov 2026 [Edition 1 published: 12 protocols across 27 columns, 324 cells read on 4 Nov 2026. 23 live, 12 pilot, 57 announced, 3 not supported, 229 with no statement found.](https://agentreadycheckout.com/matrix/2026-11-04) - 4 Nov 2026 [Google brings UCP-powered direct checkout to Canada on AI Mode and Gemini](https://agentreadycheckout.com/news/2026-11-04-google-brings-ucp-powered-direct-checkout-to-canada-on) - 3 Nov 2026 [Mastercard discloses an OpenAI agreement that includes Agent Pay](https://agentreadycheckout.com/news/2026-11-03-mastercard-discloses-an-openai-agreement-that-includes) [All dated news](https://agentreadycheckout.com/news) and [the history from September 2025](https://agentreadycheckout.com/guides/history-september-2025-to-now). ## Merchant decision guide Pick your platform, processor, size band and the channels where your customers shop with agents. The guide returns the protocols that apply, the integration path, dated cost lines from published pricing and the open risks. It works without JavaScript: every answer is also on a static page. Static pages: [Shopify](https://agentreadycheckout.com/guide/shopify), [BigCommerce](https://agentreadycheckout.com/guide/bigcommerce), [Salesforce CC](https://agentreadycheckout.com/guide/salesforce-commerce-cloud), [Adobe Commerce](https://agentreadycheckout.com/guide/adobe-commerce), [commercetools](https://agentreadycheckout.com/guide/commercetools), [WooCommerce](https://agentreadycheckout.com/guide/woocommerce). ## Pay-per-call endpoints Ora's paid-capability index, read 5 Nov 2026, lists 9,977 x402 endpoints on 1,586 hosts, with a median price of $0.01 a call. [Endpoints agents can buy today](https://agentreadycheckout.com/pay-per-call), [what a call costs](https://agentreadycheckout.com/pay-per-call/prices), [x402 or MPP for a seller](https://agentreadycheckout.com/pay-per-call/x402-or-mpp), and [Ora's six Payments checks against the matrix](https://agentreadycheckout.com/method/ora-payments-layer). ## Latest in the liability and rules tracker | Date | Network | Change | Who carries the dispute | Document and page | | --- | --- | --- | --- | --- | | 24 Oct 2026 | Visa | Dispute Condition 10.4 (Other Fraud, Card-Absent) invalid-dispute evidence: matching customer account or login IDs now explicitly include login IDs for an Agentic Payment Provider as well as the merchant site; the section was last updated in the October 2026 edition. | Merchant still carries a 10.4 fraud dispute, but can defeat it by matching the agent provider login ID plus IP or device data from prior undisputed orders. | Visa Core Rules and Visa Product and Service Rules, 24 October 2026 edition, Section 11.8.5.3, ID# 0030254 (Last Updated Oct 2026), p. 710; related response rules p. 715 | [All 23 rows of the tracker](https://agentreadycheckout.com/rules). ## Most searched head-to-heads - [**ACP vs UCP**](https://agentreadycheckout.com/compare/acp-vs-ucp) ACP lost its main checkout surface when OpenAI moved ChatGPT purchases to merchant sites on 24 Mar 2026 and now carries product feeds there. - [**x402 vs MPP**](https://agentreadycheckout.com/compare/x402-vs-mpp) Both answer HTTP 402. x402 is governed by the x402 Foundation under the Linux Foundation (40 members at the 14 Jul 2026 launch) and settles mostly in stablecoins, with Lightning added 23 Sep 2026. - [**ChatGPT vs Google AI Mode**](https://agentreadycheckout.com/compare/chatgpt-shopping-vs-google-ai-mode-and-gemini-checkout) Google completes checkout inside AI Mode and Gemini over UCP with Google Wallet for select merchants, merchant of record unchanged. [All 30 head-to-heads](https://agentreadycheckout.com/compare). ## News - 4 Nov 2026 [Google brings UCP-powered direct checkout to Canada on AI Mode and Gemini](https://agentreadycheckout.com/news/2026-11-04-google-brings-ucp-powered-direct-checkout-to-canada-on) - 3 Nov 2026 [Mastercard discloses an OpenAI agreement that includes Agent Pay](https://agentreadycheckout.com/news/2026-11-03-mastercard-discloses-an-openai-agreement-that-includes) - 24 Oct 2026 [Visa Core Rules October 2026 edition names agent provider login IDs in 10.4 evidence](https://agentreadycheckout.com/news/2026-10-24-visa-core-rules-october-2026-edition-names-agent) - 21 Oct 2026 [Walmart announces Agent Profiles, an MCP Agent Gateway beta and terms for AI agents](https://agentreadycheckout.com/news/2026-10-21-walmart-announces-agent-profiles-an-mcp-agent-gateway) - 20 Oct 2026 [Mastercard opens Agent Pay for Machines Early Access after pilots including Coinbase](https://agentreadycheckout.com/news/2026-10-20-mastercard-opens-agent-pay-for-machines-early-access) [All 27 news items](https://agentreadycheckout.com/news). ## For agents and crawlers This site is built to be read without JavaScript. Start from [llms.txt](https://agentreadycheckout.com/llms.txt), read everything in one file at [llms-full.txt](https://agentreadycheckout.com/llms-full.txt), list pages in [sitemap.xml](https://agentreadycheckout.com/sitemap.xml), follow [the feed](https://agentreadycheckout.com/feed.xml), or ask any page for markdown with an Accept header of text/markdown. The datasets are on [the data page](https://agentreadycheckout.com/data), and the same rows answer queries through the [API and MCP server](https://agentreadycheckout.com/developers). The companies behind the cells have a profile each in [the vendors section](https://agentreadycheckout.com/vendors), with a dataset download. One cell over REST: ```bash curl -s 'https://agentreadycheckout.com/api/v1/get_matrix_cell?protocol_id=acp&column_id=stripe' ``` ## Sources 1. [ucp.dev/](https://ucp.dev/), read 4 Nov 2026 2. [UCP specification overview](https://ucp.dev/latest/specification/overview/), read 4 Nov 2026 3. [agenticcommerce.dev/](https://www.agenticcommerce.dev/), read 4 Nov 2026 4. [Visa Core Rules and Visa Product and Service Rules, 24 October 2026](https://usa.visa.com/dam/VCOM/download/about-visa/visa-rules-public.pdf), read 4 Nov 2026 5. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=home), read 5 Nov 2026 Last reviewed 4 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 4 Nov 2026, [5 sources](#sources-h). ## The pay-layer check we recommend **[Ora](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=home).** Ora's Payments layer runs 6 checks (x402, MPP, UCP, ACP, ACP delegate payment and AP2), worth 10 of 100 points, and publishes each check's points in GET /api/checks (132 checks in all, read 5 Nov 2026). A reader can look up a cached score, scan a domain for free at up to 10 scans a minute, or run `npx ax@0.10 audit `. Limits: public URLs only, no repeat-scan data published, and the fixing product is behind a waitlist. [The checks mapped to the matrix](https://agentreadycheckout.com/method/ora-payments-layer). ## Method [How cells, sources and read dates are defined](https://agentreadycheckout.com/method) --- --- title: "About | Agent Ready Checkout" description: "About Agent Ready Checkout: a dated, sourced reference for the protocols, processors, platforms and agent surfaces through which software agents pay and buy." canonical: https://agentreadycheckout.com/about site: "Agent Ready Checkout" last_updated: 2026-11-04 section: "About" --- # About | Agent Ready Checkout > About Agent Ready Checkout: a dated, sourced reference for the protocols, processors, platforms and agent surfaces through which software agents pay and buy. Source: https://agentreadycheckout.com/about Site: Agent Ready Checkout Last reviewed: 2026-11-04 # About Agent Ready Checkout In short Agent Ready Checkout is a reference for how software agents pay and buy: the protocols, the processors and platforms that support them, the agent surfaces that shop, and a decision guide for merchants. It publishes dated, sourced statuses and says plainly when nothing is public. The audience is payments leads, ecommerce engineers and merchants. ## What this site is The site answers three questions for people who run checkout: which agent payment protocols are real today, who supports them, and who carries the loss when an agent-placed order is disputed. Its centre is the [protocol support matrix](https://agentreadycheckout.com/matrix), with 12 protocols and programs against 27 processors, platforms, retailers and agent surfaces. Around it sit profiles, 30 head-to-heads, the [liability and rules tracker](https://agentreadycheckout.com/rules), the [merchant decision guide](https://agentreadycheckout.com/guide), 12 guides, a glossary, a FAQ and dated news. ## How it is written Every fact links to the page it came from and carries the date it was read. A status of live needs the vendor's own page. Where a claim comes from a vendor about itself, the page labels it a vendor claim. The [method page](https://agentreadycheckout.com/method) sets out the cell definitions and the rubric, and the [editorial policy](https://agentreadycheckout.com/editorial-policy) sets out how corrections and conflicts are handled. The site loads no advertising and no third-party scripts. Pages load without JavaScript, apart from the decision guide form, which also works without it. ## Scope and limits It is not legal or financial advice, and the rules tracker's plain readings are readings of public documents. It reads and dates what companies publish: a status for each protocol and company in the matrix, a rubric for each protocol, and sourced figures for the pay-per-call endpoints Ora indexes. Where a page recommends a tool, as the method page does with Ora for checking a pay layer, it gives its reasons and the tool's limits. It covers the pay layer only: how an agent identifies itself in general, and how a site is found or read by an agent, are subjects for other references. ## Sources 1. [Methodology](https://agentreadycheckout.com/method), read 4 Nov 2026 2. [Editorial policy](https://agentreadycheckout.com/editorial-policy), read 4 Nov 2026 Last reviewed 4 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 4 Nov 2026, [2 sources](#sources-h). ## Method [How cells, sources and read dates are defined](https://agentreadycheckout.com/method) --- --- title: "360 checks: the largest sellers on Ora, daily | Agent Ready Checkout" description: "66 of the largest sellers in the world read on Ora's agent-readiness scan, the pay layer first, one a day. Every layer and the editors' read." canonical: https://agentreadycheckout.com/blog site: "Agent Ready Checkout" last_updated: 2026-11-15 date: 2026-11-15 section: "360 checks" --- # 360 checks: the largest sellers on Ora, daily | Agent Ready Checkout > 66 of the largest sellers in the world read on Ora's agent-readiness scan, the pay layer first, one a day. Every layer and the editors' read. Source: https://agentreadycheckout.com/blog Site: Agent Ready Checkout Last reviewed: 2026-11-15 One company a day # The 360 checks: the largest sellers in the world, read on the pay layer In short 66 of the largest sellers in the world, read on Ora's agent-readiness scan with the pay layer first, one a day from 9 Nov 2026 to 15 Nov 2026. A new company is read and published every day, the newest at the top. Each day this site reads one of the largest sellers in the world the way an agent would: [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check-index) free scan requests the pages with the agents' own user agents, reads robots.txt and the files agents look for, tries the API and MCP surfaces and probes the six payment checks for x402, MPP, UCP, ACP and AP2. A 360 check sets the Payments layer against [the matrix](https://agentreadycheckout.com/matrix), lists every other check Ora ran, names the fixes worth most points and closes with the editors' read. The company's score is read from Ora on the day the check is published and is not updated afterwards; [how Ora's Payments checks map to the matrix](https://agentreadycheckout.com/method/ora-payments-layer). ## Every check | Published | Company | Kind | Ora score | Grade | Pay layer | Protocols met | | --- | --- | --- | --- | --- | --- | --- | | 15 Nov 2026 | Zara | retailer | 8 of 100 | F | did not apply | none | | 14 Nov 2026 | Uniqlo | retailer | 7 of 100 | F | did not apply | none | | 13 Nov 2026 | Lululemon | retailer | 15 of 100 | F | did not apply | none | | 12 Nov 2026 | Gap | retailer | 40 of 100 | D | did not apply | none | | 11 Nov 2026 | Dick's Sporting Goods | retailer | 16 of 100 | F | did not apply | none | | 11 Nov 2026 | Ulta Beauty | retailer | 29 of 100 | D | did not apply | none | | 10 Nov 2026 | Aldi | retailer | 38 of 100 | D | did not apply | none | | 10 Nov 2026 | IKEA | retailer | 47 of 100 | D | did not apply | none | | 10 Nov 2026 | Sam's Club | retailer | 51 of 100 | C | did not apply | none | | 9 Nov 2026 | Accor | travel seller | 49 of 100 | C | did not apply | none | | 9 Nov 2026 | Adidas | retailer | 15 of 100 | F | did not apply | none | | 9 Nov 2026 | Agoda | travel seller | 45 of 100 | D | did not apply | none | | 9 Nov 2026 | Airbnb | travel seller | 14 of 100 | F | did not apply | none | | 9 Nov 2026 | Albertsons | retailer | 23 of 100 | F | did not apply | none | | 9 Nov 2026 | Alibaba | marketplace | 41 of 100 | D | did not apply | none | | 9 Nov 2026 | Amazon | marketplace | 40 of 100 | D | did not apply | none | | 9 Nov 2026 | American Airlines | travel seller | 25 of 100 | F | did not apply | none | | 9 Nov 2026 | Booking.com | travel seller | 37 of 100 | D | did not apply | none | | 9 Nov 2026 | Carnival | travel seller | 27 of 100 | F | did not apply | none | | 9 Nov 2026 | Carrefour | retailer | 60 of 100 | C | did not apply | none | | 9 Nov 2026 | Chewy | retailer | 26 of 100 | F | did not apply | none | | 9 Nov 2026 | Costco | retailer | 26 of 100 | F | did not apply | none | | 9 Nov 2026 | Coupang | marketplace | 29 of 100 | D | did not apply | none | | 9 Nov 2026 | CVS | retailer | 25 of 100 | F | did not apply | none | | 9 Nov 2026 | Delta Air Lines | travel seller | 13 of 100 | F | did not apply | none | | 9 Nov 2026 | Dollar General | retailer | 50 of 100 | C | did not apply | none | | 9 Nov 2026 | DoorDash | marketplace | 33 of 100 | D | did not apply | none | | 9 Nov 2026 | easyJet | travel seller | 17 of 100 | F | did not apply | none | | 9 Nov 2026 | eBay | marketplace | 30 of 100 | D | did not apply | none | | 9 Nov 2026 | Emirates | travel seller | 20 of 100 | F | did not apply | none | | 9 Nov 2026 | Etsy | marketplace | 49 of 100 | C | did not apply | none | | 9 Nov 2026 | Expedia | travel seller | 11 of 100 | F | did not apply | none | | 9 Nov 2026 | Flipkart | marketplace | 34 of 100 | D | did not apply | none | | 9 Nov 2026 | H&M | retailer | 15 of 100 | F | did not apply | none | | 9 Nov 2026 | Hertz | travel seller | 59 of 100 | C | did not apply | none | | 9 Nov 2026 | Home Depot | retailer | 16 of 100 | F | did not apply | none | | 9 Nov 2026 | Hyatt | travel seller | 18 of 100 | F | did not apply | none | | 9 Nov 2026 | IHG | travel seller | 18 of 100 | F | did not apply | none | | 9 Nov 2026 | Instacart | marketplace | 54 of 100 | C | did not apply | none | | 9 Nov 2026 | JD.com | marketplace | 33 of 100 | D | did not apply | none | | 9 Nov 2026 | Kroger | retailer | 20 of 100 | F | did not apply | none | | 9 Nov 2026 | Lowe's | retailer | 42 of 100 | D | did not apply | none | | 9 Nov 2026 | Lufthansa | travel seller | 36 of 100 | D | did not apply | none | | 9 Nov 2026 | Macy's | retailer | 34 of 100 | D | did not apply | none | | 9 Nov 2026 | Marriott | travel seller | 20 of 100 | F | did not apply | none | | 9 Nov 2026 | Mercado Libre | marketplace | 40 of 100 | D | did not apply | none | | 9 Nov 2026 | Nike | retailer | 30 of 100 | D | did not apply | none | | 9 Nov 2026 | Nordstrom | retailer | 20 of 100 | F | did not apply | none | | 9 Nov 2026 | Otto | marketplace | 41 of 100 | D | did not apply | none | | 9 Nov 2026 | Publix | retailer | 19 of 100 | F | did not apply | none | | 9 Nov 2026 | Rakuten | marketplace | 47 of 100 | D | did not apply | none | | 9 Nov 2026 | Royal Caribbean | travel seller | 55 of 100 | C | did not apply | none | | 9 Nov 2026 | Ryanair | travel seller | 42 of 100 | D | did not apply | none | | 9 Nov 2026 | Sephora | retailer | 21 of 100 | F | did not apply | none | | 9 Nov 2026 | Shein | retailer | 36 of 100 | D | probed, none found | none | | 9 Nov 2026 | Southwest | travel seller | 25 of 100 | F | did not apply | none | | 9 Nov 2026 | Target | retailer | 41 of 100 | D | did not apply | none | | 9 Nov 2026 | Temu | marketplace | 47 of 100 | D | did not apply | none | | 9 Nov 2026 | Trip.com | travel seller | 21 of 100 | F | did not apply | none | | 9 Nov 2026 | Tripadvisor | travel seller | 22 of 100 | F | did not apply | none | | 9 Nov 2026 | TUI | travel seller | 45 of 100 | D | did not apply | none | | 9 Nov 2026 | Uber | travel seller | 50 of 100 | C | did not apply | none | | 9 Nov 2026 | Walgreens | retailer | 28 of 100 | D | did not apply | none | | 9 Nov 2026 | Walmart | retailer | 49 of 100 | C | did not apply | none | | 9 Nov 2026 | Wayfair | retailer | 33 of 100 | D | did not apply | none | | 9 Nov 2026 | Zalando | marketplace | 40 of 100 | D | did not apply | none | ## How a check is read The score and every layer, check, point and quoted detail come from Ora's score file for the domain, GET /api/score/, read once on the day of publication. Ora's wording is quoted only where it passes this site's own writing gate. The verdict and the one-line closing are written by the editors for each company, and the six payment checks link to the matrix rows that say which processors and platforms carry each protocol. On a site Ora reads as a shop the six payment checks are probed and a protocol found scores the layer, while none found costs nothing; on a site it does not read as a shop the six are marked not applicable. ## Sources 1. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check-index), read 15 Nov 2026 2. [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check-index), read 15 Nov 2026 Last reviewed 15 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 15 Nov 2026, [2 sources](#sources-h). ## Method Scores are Ora's on the day each company was read. The verdicts are ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Accor: the 360 agent-readiness check | Agent Ready Checkout" description: "Accor on Ora's agent-readiness scan, read 2026-11-14: 49 of 100, grade C. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/accor-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Accor: the 360 agent-readiness check | Agent Ready Checkout > Accor on Ora's agent-readiness scan, read 2026-11-14: 49 of 100, grade C. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/accor-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Accor on the pay layer: the 360 agent-readiness check In short Accor scores 49 of 100 on Ora's agent-readiness scan, a C, read 14 Nov 2026. The six payment checks did not apply to accor.com on this read, which is how Ora treats a site it does not read as a shop. Six agents in, and a robots.txt and an llms.txt that both come back as HTML. On 14 Nov 2026 the public site at accor.com scored **49 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a C. Accor is Europe's largest hotel group, with more than 5,000 hotels, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Accor.com offers developer resources, but lacks an OpenAPI/Swagger specification. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 11 of 14 | 79% | Can agents find and recommend it | | Access | 22 of 55 | 40% | Can agents read it | | Usability | 28 of 67 | 42% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 49 of 100 | 49% | Grade C | ## The pay layer Ora did not run the six payment checks against accor.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP delegate payment | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | AP2 | Does not apply | 0 of 3 | AP2 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on accor.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 11 of 14 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Partial | 0 of 1 | /.well-known/ard.json exists but is not valid JSON | | AI Catalog discovery | Partial | 0 of 1 | /.well-known/ai-catalog.json exists but is not valid JSON | | Developer resource discoverability | Pass | 3 of 3 | Pass, no detail recorded. | | Brand name discoverability | Partial | 2 of 3 | accor.com ranks #6 for "Accor Group Hospitality" and appears 2 times in the top 10 | | Wikipedia / Wikidata entity presence | Pass | 4 of 4 | Wikipedia "Accor" and Wikidata Q212599 both verified - domain confirmed on both sources | | NPM/PyPI SDK package | Fail | 0 of 1 | No NPM or PyPI SDK package found | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Pass | 2 of 2 | Pass, no detail recorded. | ### Access: 22 of 55 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 2 | No sitemap found | | Content without JavaScript | Partial | 2 of 3 | 1933 chars with H1, but 0.9% content ratio is below the 5% target | | Not blocked by bot detection | Pass | 2 of 2 | Site accessible to 6 AI agent user-agents | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Partial | 1 of 2 | pricing.md found at /pricing.md (1 line), but it has fewer than 5 lines and it does not open with a # heading - add plan tiers, prices, and feature breakdowns; start it with a # title so agents read it as markdown | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | Agent mode view | Fail | 0 of 2 | ?mode=agent returns same content as homepage (no dedicated agent view) | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://accor.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt files found (optional) | | llms.txt exists | Partial | 0 of 1 | A file is present at https://accor.com/.well-known/llms.txt, but it returns an HTML page rather than a plain-text llms.txt. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Fail | 0 of 4 | No JSON-LD structured data found on homepage | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Pass | 3 of 3 | Documentation site found at https://developer.accor.com | | Agent instruction / when-to-use | Fail | 0 of 3 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Fail | 0 of 2 | No JSON-LD found - no entity linking possible | | Metadata completeness | Partial | 1 of 2 | 3/4 metadata signals present - missing: og:type | | Organization schema completeness | Fail | 0 of 2 | No JSON-LD found - Organization schema missing | | Schema type breadth | Fail | 0 of 2 | No extended schema types found - AI can only answer basic questions about this entity | | Trust anchor pages | Partial | 1 of 2 | About, Contact pages verified - missing: Privacy | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Pass | 1 of 1 | All 2 measured pages fit an agent context budget (largest ~1K tokens) | | Content behind auth | Pass | 2 of 2 | All 5 sampled pages are publicly readable (1 with substantive content) | | OpenAPI spec published | Fail | 0 of 7 | No OpenAPI/Swagger specification found | | Developer portal | Pass | 6 of 6 | Developer documentation portal found at https://developer.accor.com | | API catalog (RFC 9727) | Partial | 1 of 2 | api-catalog responded but body is not valid JSON | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://accor.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; charset=utf-8; Vary header missing Accept (got "rsc,accept-encoding, origin") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (GPTBot, ClaudeBot, ChatGPT-User, PerplexityBot, Google-Extended, Applebot-Extended, ora-agent, DeepSeekBot) receives markdown when requesting HTML. | | Agent crawler reachability | Pass | 2 of 2 | Reachable to all major AI crawlers - ChatGPT-User: reachable, ClaudeBot: reachable, Google-Extended: reachable, ora-agent: reachable, DeepSeekBot: reachable | ### Usability: 28 of 67 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Partial | 3 of 7 | API described in documentation at https://developer.accor.com but no machine-verifiable API surface confirmed. Best-of-protocols score: 3/7. | | OAuth 2.0 support | Pass | 5 of 5 | OpenID Connect discovery endpoint found at https://login.accor.com | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Pass | 2 of 2 | Pass, no detail recorded. | | Web Bot Auth directory | Partial | 1 of 2 | Web Bot Auth directory found but body is not valid JSON | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | Path https://accor.com/auth.md returned HTML (SPA / 404 fallback), not an auth.md document | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: accor.com, api.accor.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://accor.com/api, https://accor.com/api/v1, https://accor.com/v1, https://accor.com/v2, https://accor.com/agent/identity, https://accor.com/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 6 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 5 | No WebMCP support detected - no tool-attribute forms and no document.modelContext / navigator.modelContext usage found (scanned 8 of 23 same-origin script bundle(s) for modelContext registrations) | | Rate limit response headers | Fail | 0 of 2 | No REST rate-limit headers found on probed endpoints | | Idempotency-Key support | Fail | 0 of 3 | No REST Idempotency-Key support detected | | JSON error responses | Pass | 4 of 4 | Pass, no detail recorded. | | CLI tool available | Fail | 0 of 3 | No CLI tool found | | Multi-language SDK packages | Fail | 0 of 3 | No SDK packages found across language ecosystems | | NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask does not support SSE streaming via GET or POST | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | REST batch / bulk endpoint | Fail | 0 of 2 | No batch or bulk endpoint pattern found | | Agent-friendly 404s | Fail | 0 of 2 | Nonexistent paths return HTTP 200 with the app shell (soft-404). Agents probing for resources conclude every path exists. Return a real HTTP 404 status for unknown paths. | | Accessible document structure | Pass | 3 of 3 | Pass, no detail recorded. | | Native interactive controls | Pass | 3 of 3 | Pass, no detail recorded. | | Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. | | Form control labeling | Pass | 2 of 2 | Pass, no detail recorded. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | MCP Apps support | Fail | 0 of 4 | No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. | | A2UI / generative UI support | Fail | 0 of 2 | No A2UI or generative UI support detected | | API schema complexity analysis | Partial | 1 of 2 | REST: OpenAPI spec found but failed to parse for complexity analysis | | Function calling compatibility | Partial | 1 of 2 | API spec found but couldn't validate function calling compatibility | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Accor. OpenAPI spec published Fail, 0 of 7, about 4.2 points to gain. Ora saw: No OpenAPI/Swagger specification found. MCP server / manifest Fail, 0 of 6, about 4 points to gain. Ora saw: No MCP server or manifest found. Scoped permissions Fail, 0 of 5, about 3.3 points to gain. Ora saw: No declared OAuth scopes, security schemes, or scoped-permission documentation found. WebMCP support Fail, 0 of 5, about 3.3 points to gain. Ora saw: No WebMCP support detected - no tool-attribute forms and no document.modelContext / navigator.modelContext usage found (scanned 8 of 23 same-origin script bundle(s) for modelContext registrations). MCP Apps support Fail, 0 of 4, about 2.7 points to gain. Ora saw: No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. ## Our read Accor opens the door to all six agent user agents and hands them the wrong files. robots.txt answers with an HTML page instead of rules, so the policy rows cannot be met, and the llms.txt at accor.com/.well-known/llms.txt is an HTML page too. The home page gives 1,933 characters with an H1 at a 0.9 percent text ratio, and there is neither a sitemap nor JSON-LD. Ora read no commerce signals on the group behind more than 5,000 hotels, so the six payment checks did not apply on this read. The act layer is half built: OpenID Connect discovery at login.accor.com and a documentation portal at developer.accor.com, though the API it describes has no machine-verifiable surface, and Ora found neither an OpenAPI specification nor an MCP server, and no declared scopes. The brand search placed the domain sixth for a term read off the page, Accor Group Hospitality. Two files served as text would move this C. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/accor.com, Ora's scan (vendor)](https://ora.ai/api/score/accor.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [accor.com, the company's site](https://group.accor.com/en), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [3 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Adidas: the 360 agent-readiness check | Agent Ready Checkout" description: "Adidas on Ora's agent-readiness scan, read 2026-11-14: 15 of 100, grade F. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/adidas-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Adidas: the 360 agent-readiness check | Agent Ready Checkout > Adidas on Ora's agent-readiness scan, read 2026-11-14: 15 of 100, grade F. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/adidas-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Adidas on the pay layer: the 360 agent-readiness check In short Adidas scores 15 of 100 on Ora's agent-readiness scan, an F, read 14 Nov 2026. The six payment checks did not apply to adidas.com on this read, which is how Ora treats a site it does not read as a shop. PerplexityBot blocked, robots.txt a 403, and a Wikipedia match on a boot rather than the company. On 14 Nov 2026 the public site at adidas.com scored **15 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, an F, in Ora's Consumer category. Adidas is the German sportswear maker, selling direct online in most of its markets, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 3 of 9 | 33% | Can agents find and recommend it | | Access | 0 of 33 | 0% | Can agents read it | | Usability | 12 of 68 | 18% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 15 of 100 | 15% | Grade F | ## The pay layer Ora did not run the six payment checks against adidas.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A retailer that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on adidas.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 3 of 9 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Fail | 0 of 4 | In a search for your API docs, none of the 10 results is your official docs | | Brand name discoverability | Partial | 2 of 3 | adidas.com ranks #7 for "adidas" and appears 2 times in the top 10 (searched your brand name alone: we could not read a product term from your site) | | NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | ### Access: 0 of 33 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 1 | No sitemap found | | Not blocked by bot detection | Not run | 0 of 2 | Could not test bot user agents | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (4 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No robots.txt found - cannot check for Schema Feeds | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://adidas.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at https://adidas.com/llms.txt. Publish it at the site root, where agents that follow the llms.txt spec look for it. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Not run | 0 of 2 | Could not fetch homepage | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Fail | 0 of 4 | No public API or documentation page linked from homepage | | Agent instruction / when-to-use | Fail | 0 of 1 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Not run | 0 of 1 | Not run, no detail recorded. | | Metadata completeness | Not run | 0 of 1 | Could not fetch homepage | | Organization schema completeness | Not run | 0 of 1 | Not run, no detail recorded. | | Trust anchor pages | Fail | 0 of 1 | No trust anchor pages found with sufficient content (About, Contact, Privacy) | | OpenAPI spec published | Fail | 0 of 8 | No OpenAPI/Swagger specification found | | Developer portal | Fail | 0 of 5 | No developer portal found | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Not run | 0 of 1 | Could not fetch with Accept: text/markdown | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Could not probe both Accept: text/markdown and Accept: text/html on the homepage https://adidas.com | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. | ### Usability: 12 of 68 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Pass | 8 of 8 | GraphQL endpoint at https://adidas.com/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. Best-of-protocols score: 7/7. | | OAuth 2.0 support | Fail | 0 of 5 | No OAuth 2.0 or OpenID Connect support detected | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Fail | 0 of 2 | Insufficient content to evaluate onboarding friction | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: adidas.com, api.adidas.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://adidas.com/api, https://adidas.com/api/v1, https://adidas.com/v1, https://adidas.com/v2, https://adidas.com/agent/identity, https://adidas.com/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 10 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 8 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages | | Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages | | JSON error responses | Pass | 3 of 3 | Pass, no detail recorded. | | CLI tool available | Fail | 0 of 3 | No CLI tool found | | NLWeb /ask endpoint | Pass | 1 of 1 | NLWeb /ask endpoint exists but requires authentication (HTTP 403, via POST) | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask requires authentication - cannot verify streaming | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages | | GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages | | GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages | | GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages | | Agent-friendly 404s | Partial | 1 of 2 | Nonexistent paths return HTTP 403 instead of 404/410 - agents get a non-200 signal but not the standard not-found semantics | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: introspection auth-gated and no schema evidence in docs | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Adidas. Developer resource discoverability Fail, 0 of 4, about 9.9 points to gain. Ora saw: In a search for your API docs, none of the 10 results is your official docs. OpenAPI spec published Fail, 0 of 8, about 8.1 points to gain. Ora saw: No OpenAPI/Swagger specification found. MCP server / manifest Fail, 0 of 10, about 6.5 points to gain. Ora saw: No MCP server or manifest found. WebMCP support Fail, 0 of 8, about 5.2 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found. Developer portal Fail, 0 of 5, about 5.1 points to gain. Ora saw: No developer portal found. ## Our read Adidas blocked PerplexityBot outright, answered the robots.txt request with a 403 and returned no page for the home page, so the Access layer scores 0 of 47 and the content, policy and structured-data rows are unverified. Ora found no commerce signals, so the six payment checks did not apply on this read, which for a brand that sells direct on adidas.com is the wall talking. What it could reach is a GraphQL endpoint at adidas.com/graphql with introspection gated, and nothing around it: neither a developer portal nor an OpenAPI specification, neither an MCP server nor OAuth discovery, and neither a sitemap nor an llms.txt. A search for the API documentation returned no official page in ten results, 5.6 points. The odd detail is the knowledge graph: Ora confirmed the domain against the Wikidata item for Adidas and the Wikipedia article for the Predator boot rather than the company. The domain ranks third for its own name. A 403 on robots.txt is the first file to fix. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/adidas.com, Ora's scan (vendor)](https://ora.ai/api/score/adidas.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora's scoring rules, version 3 (vendor)](https://ora.ai/api/ranker/releases/3/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 4. [adidas.com, the company's site](https://adidas.com), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [4 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Agoda: the 360 agent-readiness check | Agent Ready Checkout" description: "Agoda on Ora's agent-readiness scan, read 2026-11-14: 45 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/agoda-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Agoda: the 360 agent-readiness check | Agent Ready Checkout > Agoda on Ora's agent-readiness scan, read 2026-11-14: 45 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/agoda-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Agoda on the pay layer: the 360 agent-readiness check In short Agoda scores 45 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to agoda.com on this read, which is how Ora treats a site it does not read as a shop. Zero characters of home page and a JSON-LD block that does not parse. On 14 Nov 2026 the public site at agoda.com scored **45 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D, in Ora's Travel & Hospitality category. Agoda is the Asia-focused hotel booking site of Booking Holdings, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Agents hit a JavaScript-only homepage and find no MCP server. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 8 of 11 | 73% | Can agents find and recommend it | | Access | 18 of 43 | 42% | Can agents read it | | Usability | 21.43 of 63 | 34% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 45 of 100 | 45% | Grade D | ## The pay layer Ora did not run the six payment checks against agoda.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on agoda.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 8 of 11 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Pass | 4 of 4 | Pass, no detail recorded. | | Brand name discoverability | Partial | 1 of 3 | agoda.com ranks #6 for "agoda" (searched your brand name alone: no main product term from your homepage qualified) | | robots.txt AI crawler policy | Pass | 1 of 1 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 2 of 2 checks (2 crawlers on 1 page), not scored. | | NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | | Homepage not hidden from search | Pass | 1 of 1 | No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search. | ### Access: 18 of 43 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Pass | 1 of 1 | Valid sitemap found at https://www.agoda.com/sitemaps.xml with multiple sitemaps entries | | Content without JavaScript | Fail | 0 of 5 | Homepage: Very little text content (0 chars), and 98% of the page is script and it has almost no text: the content is rendered by JavaScript, so AI crawlers that run none see an empty page. | | Not blocked by bot detection | Pass | 2 of 2 | Site accessible to 4 agent user-agents (ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot). | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (14 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://agoda.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | robots.txt agent-user policy | Pass | 1 of 1 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://agoda.com/. Declared policy only | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at https://agoda.com/llms.txt. Publish it at the site root, where agents that follow the llms.txt spec look for it. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Partial | 0.5 of 2 | JSON-LD blocks found but contain invalid JSON | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Pass | 4 of 4 | Documentation site found at https://developer.agoda.com | | Agent instruction / when-to-use | Fail | 0 of 1 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Fail | 0 of 1 | No sameAs entity linking in JSON-LD - agents cannot disambiguate your brand | | Metadata completeness | Partial | 0.5 of 1 | Only 1/4 metadata signals present - missing: canonical URL, og:image, og:type | | Organization schema completeness | Fail | 0 of 1 | No Organization type found in JSON-LD | | Trust anchor pages | Fail | 0 of 1 | No trust anchor pages found with sufficient content (About, Contact, Privacy) | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Pass | 1 of 1 | All 6 measured pages fit an agent context budget (largest ~1K tokens) | | Content starts near the top | Pass | 1 of 1 | Pass, no detail recorded. | | Content behind auth | Pass | 1 of 1 | All 1 sampled page is publicly readable (0 with substantive content) | | OpenAPI spec published | Fail | 0 of 8 | No OpenAPI/Swagger specification found | | Developer portal | Pass | 5 of 5 | Developer documentation portal found at https://developer.agoda.com | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://agoda.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; charset=utf-8; Vary header missing Accept (got "user-agent, accept-encoding") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. | | Agent crawler reachability | Pass | 1 of 1 | Reachable to every agent we tested - ChatGPT-User: reachable, OAI-SearchBot: reachable, Claude-User: reachable, PerplexityBot: reachable | ### Usability: 21.43 of 63 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Partial | 3.43 of 8 | API described in documentation at https://developer.agoda.com but no machine-verifiable API surface confirmed. GraphQL endpoint at https://agoda.com/graphql reachable but introspection disabled (errors_array). | | OAuth 2.0 support | Pass | 5 of 5 | OAuth endpoint found at https://login.agoda.com/oauth2/authorize | | Scoped permissions | Pass | 5 of 5 | Pass, no detail recorded. | | Agent onboarding friction | Partial | 1 of 2 | Onboarding signals described but not verified live: self-serve key generation, sandbox/test environment, zero-auth access | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: agoda.com, api.agoda.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://agoda.com/api, https://agoda.com/api/v1, https://agoda.com/v1, https://agoda.com/v2, https://agoda.com/agent/identity, https://agoda.com/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 10 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 8 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | No GraphQL rate-limit headers observed on the introspection response | | Idempotency-Key support | Fail | 0 of 3 | No GraphQL idempotency-key signal | | JSON error responses | Pass | 3 of 3 | Pass, no detail recorded. | | CLI tool available | Pass | 3 of 3 | CLI package found on npm: agoda-devfeedback-common | | NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask does not support SSE streaming via GET or POST | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Partial | 0 of 2 | Testing/staging environment mentioned at https://developer.agoda.com but no dedicated sandbox found | | Agent-friendly 404s | Partial | 1 of 2 | The nonexistent path https://agoda.com/__ora-404-probe-n65k52nd correctly returns HTTP 404. Partial credit: no Markdown error body was detected. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | MCP Apps support | Fail | 0 of 4 | No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. | | A2UI / generative UI support | Fail | 0 of 2 | No A2UI or generative UI support detected | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: endpoint detected but no schema reachable | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Agoda. MCP server / manifest Fail, 0 of 10, about 7.1 points to gain. Ora saw: No MCP server or manifest found. OpenAPI spec published Fail, 0 of 8, about 6.2 points to gain. Ora saw: No OpenAPI/Swagger specification found. WebMCP support Fail, 0 of 8, about 5.6 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found. Brand name discoverability Partial, 1 of 3, about 4 points to gain. Ora saw: agoda.com ranks #6 for "agoda" (searched your brand name alone: no main product term from your homepage qualified). Content without JavaScript Fail, 0 of 5, about 3.9 points to gain. Ora saw: Homepage: Very little text content (0 chars), and 98% of the page is script and it has almost no text: the content is rendered by JavaScript, so AI crawlers that run none see an empty page. ## Our read Agoda is the highest-scoring travel seller in this batch and its home page gives an agent zero characters of text: 98 percent of the page is script, so the content row fails, and the JSON-LD blocks it does carry contain invalid JSON. The door is open to all four agent user agents, robots.txt allows the search and training crawlers, and the sitemap index at agoda.com/sitemaps.xml is valid. Ora read no commerce signals, so the six payment checks did not apply on this read. The act layer is what lifts the C: a developer portal at developer.agoda.com, an OAuth endpoint at login.agoda.com and SDK packages in registries, though the API is described without a machine-verifiable surface and Ora found neither an OpenAPI specification nor an MCP server, and no WebMCP tool. The domain ranks sixth for its own name. Server-rendered text and a valid JSON-LD block are the two fixes that open the reading side. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/agoda.com, Ora's scan (vendor)](https://ora.ai/api/score/agoda.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora's scoring rules, version 3 (vendor)](https://ora.ai/api/ranker/releases/3/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 4. [agoda.com, the company's site](https://www.agoda.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [4 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Airbnb: the 360 agent-readiness check | Agent Ready Checkout" description: "Airbnb on Ora's agent-readiness scan, read 2026-11-14: 14 of 100, grade F. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/airbnb-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Airbnb: the 360 agent-readiness check | Agent Ready Checkout > Airbnb on Ora's agent-readiness scan, read 2026-11-14: 14 of 100, grade F. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/airbnb-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Airbnb on the pay layer: the 360 agent-readiness check In short Airbnb scores 14 of 100 on Ora's agent-readiness scan, an F, read 14 Nov 2026. The six payment checks did not apply to airbnb.com on this read, which is how Ora treats a site it does not read as a shop. A robots.txt that admits search crawlers, and a shield that challenges every agent anyway. On 14 Nov 2026 the public site at airbnb.com scored **14 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, an F, in Ora's Travel & Hospitality category. Airbnb is the marketplace for short-term stays and experiences, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Turns agents away at the door: a WAF challenge blocks the homepage and there is no MCP server, OpenAPI spec or developer portal. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 3 of 10 | 30% | Can agents find and recommend it | | Access | 2.5 of 41 | 6% | Can agents read it | | Usability | 8 of 66 | 12% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 14 of 100 | 14% | Grade F | ## The pay layer Ora did not run the six payment checks against airbnb.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on airbnb.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 3 of 10 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Fail | 0 of 4 | In a search for your API docs, none of the 10 results is your official docs | | Brand name discoverability | Partial | 1 of 3 | airbnb.com ranks #7 for "airbnb" (searched your brand name alone: we could not read a product term from your site) | | robots.txt AI crawler policy | Pass | 1 of 1 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 0 of 2 checks (2 crawlers on 1 page), not scored. | | NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | ### Access: 2.5 of 41 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 1 | No sitemap found | | Content without JavaScript | Partial | 0 of 5 | Homepage blocked by WAF/security challenge - content not accessible to agents | | Not blocked by bot detection | Partial | 0 of 2 | Bot management challenged ChatGPT-User, OAI-SearchBot, PerplexityBot. A challenge is an identity check that verified crawlers pass, so this is not proof agents are blocked - but unverified agents will not get through. | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://airbnb.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | robots.txt agent-user policy | Pass | 1 of 1 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://airbnb.com/. Declared policy only | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at https://airbnb.com/llms.txt. Publish it at the site root, where agents that follow the llms.txt spec look for it. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Partial | 0 of 2 | Homepage blocked by WAF - cannot check structured data | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Partial | 0 of 4 | Homepage blocked by WAF - cannot check for docs links | | Agent instruction / when-to-use | Fail | 0 of 1 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Partial | 0 of 1 | Homepage blocked by WAF - cannot check entity linking | | Metadata completeness | Partial | 0 of 1 | Homepage blocked by WAF - cannot check metadata | | Organization schema completeness | Partial | 0 of 1 | Homepage blocked by WAF - cannot check Organization schema | | Trust anchor pages | Partial | 0.5 of 1 | Only Contact page verified - missing: About, Privacy | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | OpenAPI spec published | Fail | 0 of 8 | No OpenAPI/Swagger specification found | | Developer portal | Fail | 0 of 5 | No developer portal found | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://airbnb.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; Vary header missing Accept (got "none") | | Agent crawler reachability | Partial | 0 of 1 | Bot management challenged ChatGPT-User, OAI-SearchBot, PerplexityBot - a challenge is an identity check verified crawlers pass, so reachability is undetermined rather than blocked (ChatGPT-User: challenged | ### Usability: 8 of 66 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Pass | 8 of 8 | GraphQL endpoint at https://api.airbnb.com/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. Best-of-protocols score: 7/7. | | OAuth 2.0 support | Fail | 0 of 5 | No OAuth 2.0 or OpenID Connect support detected | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Fail | 0 of 2 | High onboarding friction - no free tier, self-serve keys, or sandbox detected | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: airbnb.com, api.airbnb.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://airbnb.com/api, https://airbnb.com/api/v1, https://airbnb.com/v1, https://airbnb.com/v2, https://airbnb.com/agent/identity, https://airbnb.com/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 10 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 8 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages | | Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages | | JSON error responses | Fail | 0 of 3 | API does not return JSON error responses (or no API detected) | | CLI tool available | Fail | 0 of 3 | No CLI tool found | | NLWeb /ask endpoint | Pass | 1 of 1 | NLWeb /ask endpoint exists but requires authentication (HTTP 403, via GET) | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask requires authentication - cannot verify streaming | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages | | GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages | | GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages | | GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: introspection auth-gated and no schema evidence in docs | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Airbnb. Developer resource discoverability Fail, 0 of 4, about 8.9 points to gain. Ora saw: In a search for your API docs, none of the 10 results is your official docs. MCP server / manifest Fail, 0 of 10, about 6.7 points to gain. Ora saw: No MCP server or manifest found. OpenAPI spec published Fail, 0 of 8, about 6.5 points to gain. Ora saw: No OpenAPI/Swagger specification found. WebMCP support Fail, 0 of 8, about 5.4 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found. Brand name discoverability Partial, 1 of 3, about 4.4 points to gain. Ora saw: airbnb.com ranks #7 for "airbnb" (searched your brand name alone: we could not read a product term from your site). ## Our read Airbnb challenged ChatGPT-User, OAI-SearchBot, Claude-User and PerplexityBot at the door and returned a security page in place of the home page, so the content and structured-data rows are unverified and the Access layer reads 4 of 53. robots.txt is the one policy an agent can read: the three search crawlers are allowed on the page Ora checked and both training crawlers are refused, with no restriction stated for the user-triggered agents. Ora found no commerce signals past the wall, so the six payment checks did not apply on this read, on the platform most people would name first as something an agent should book. What it could reach is a GraphQL endpoint at api.airbnb.com with introspection gated, and nothing around it: neither a developer portal nor an OpenAPI specification, neither an MCP server nor OAuth discovery, and neither a sitemap nor an llms.txt. The domain ranks seventh for its own name. The policy says search yes and training no; the shield says nobody, and the shield comes first. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/airbnb.com, Ora's scan (vendor)](https://ora.ai/api/score/airbnb.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora's scoring rules, version 3 (vendor)](https://ora.ai/api/ranker/releases/3/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 4. [airbnb.com, the company's site](https://www.airbnb.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [4 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Albertsons: the 360 agent-readiness check | Agent Ready Checkout" description: "Albertsons on Ora's agent-readiness scan, read 2026-11-14: 23 of 100, grade F. The pay layer did not apply. One company a day." canonical: https://agentreadycheckout.com/blog/albertsons-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Albertsons: the 360 agent-readiness check | Agent Ready Checkout > Albertsons on Ora's agent-readiness scan, read 2026-11-14: 23 of 100, grade F. The pay layer did not apply. One company a day. Source: https://agentreadycheckout.com/blog/albertsons-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Albertsons on the pay layer: the 360 agent-readiness check In short Albertsons scores 23 of 100 on Ora's agent-readiness scan, an F, read 14 Nov 2026. The six payment checks did not apply to albertsons.com on this read, which is how Ora treats a site it does not read as a shop. A page titled Pardon Our Interruption, which the scan read as the grocer's name. On 14 Nov 2026 the public site at albertsons.com scored **23 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, an F. Albertsons is the second-largest supermarket operator in the United States, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 6 of 15 | 40% | Can agents find and recommend it | | Access | 13 of 54 | 24% | Can agents read it | | Usability | 7 of 50 | 14% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 23 of 100 | 23% | Grade F | ## The pay layer Ora did not run the six payment checks against albertsons.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A retailer that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP delegate payment | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | AP2 | Does not apply | 0 of 3 | AP2 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on albertsons.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 6 of 15 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Fail | 0 of 3 | Agent searched for "albertsons" developer resources but found nothing relevant | | Brand name discoverability | Fail | 0 of 3 | albertsons.com was not in the top 10 for "Pardon Our Interruption" (searched your brand name alone: no main product term from your homepage qualified) | | Wikipedia / Wikidata entity presence | Pass | 4 of 4 | Wikipedia "Albertsons" and Wikidata Q2831861 both verified - domain confirmed on both sources | | robots.txt AI crawler policy | Pass | 2 of 2 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 2 of 2 checks (2 crawlers on 1 page), not scored. | | NPM/PyPI SDK package | Fail | 0 of 1 | No NPM or PyPI SDK package found | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | | Homepage not hidden from search | Fail | 0 of 1 | The homepage tells search engines not to index it (meta robots: noindex). Search engines drop it, so agents that search the web to find a site will not find this one. | ### Access: 13 of 54 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Pass | 2 of 2 | Valid sitemap found at https://www.albertsons.com/shop/sitemaps/sitemap-index.xml with multiple sitemaps entries | | Content without JavaScript | Partial | 2 of 3 | 677 chars with H1, but heading hierarchy skips H1 to H3 | | Not blocked by bot detection | Pass | 2 of 2 | Site accessible to 4 agent user-agents (ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot). | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | Agent mode view | Pass | 2 of 2 | Pass, no detail recorded. | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://albertsons.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | robots.txt agent-user policy | Pass | 2 of 2 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://albertsons.com/. Declared policy only | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at /llms.txt or /.well-known/llms.txt. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Fail | 0 of 4 | No JSON-LD structured data found on homepage | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Fail | 0 of 3 | No public API or documentation page linked from homepage | | Agent instruction / when-to-use | Fail | 0 of 3 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Fail | 0 of 2 | No JSON-LD found - no entity linking possible | | Metadata completeness | Fail | 0 of 2 | No metadata signals found - missing: canonical URL, HTML lang attribute, og:image, og:type | | Organization schema completeness | Fail | 0 of 2 | No JSON-LD found - Organization schema missing | | Schema type breadth | Fail | 0 of 2 | No extended schema types found - AI can only answer basic questions about this entity | | Trust anchor pages | Partial | 1 of 2 | Only Contact page verified - missing: About, Privacy | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Pass | 1 of 1 | All 1 measured page fit an agent context budget (largest ~1K tokens) | | OpenAPI spec published | Fail | 0 of 7 | No OpenAPI/Swagger specification found | | Developer portal | Fail | 0 of 6 | No developer portal found | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://albertsons.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; charset=utf-8; Vary header missing Accept (got "accept-encoding") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. | | Agent crawler reachability | Pass | 2 of 2 | Reachable to every agent we tested - ChatGPT-User: reachable, OAI-SearchBot: reachable, Claude-User: reachable, PerplexityBot: reachable | ### Usability: 7 of 50 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Fail | 0 of 7 | No publicly reachable API surface detected (REST and GraphQL both absent or auth-gated) | | OAuth 2.0 support | Fail | 0 of 5 | No OAuth 2.0 or OpenID Connect support detected | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Pass | 2 of 2 | Pass, no detail recorded. | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: albertsons.com, api.albertsons.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://albertsons.com/api, https://albertsons.com/api/v1, https://albertsons.com/v1, https://albertsons.com/v2, https://albertsons.com/agent/identity | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 6 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 5 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | JSON error responses | Fail | 0 of 4 | API does not return JSON error responses (or no API detected) | | CLI tool available | Fail | 0 of 3 | No CLI tool found | | Multi-language SDK packages | Fail | 0 of 3 | No SDK packages found across language ecosystems | | NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask does not support SSE streaming via GET or POST | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | Agent-friendly 404s | Partial | 1 of 2 | The nonexistent path https://albertsons.com/__ora-404-probe-j17gj87s correctly returns HTTP 404. Partial credit: no Markdown error body was detected. | | Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | API schema complexity analysis | Fail | 0 of 2 | No API schema detected | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Albertsons. Public API with reachable endpoints Fail, 0 of 7, about 6.2 points to gain. Ora saw: No publicly reachable API surface detected (REST and GraphQL both absent or auth-gated). MCP server / manifest Fail, 0 of 6, about 5.3 points to gain. Ora saw: No MCP server or manifest found. Developer resource discoverability Fail, 0 of 3, about 4.4 points to gain. Ora saw: Agent searched for "albertsons" developer resources but found nothing relevant. Brand name discoverability Fail, 0 of 3, about 4.4 points to gain. Ora saw: albertsons.com was not in the top 10 for "Pardon Our Interruption" (searched your brand name alone: no main product term from your homepage qualified). OAuth 2.0 support Fail, 0 of 5, about 4.4 points to gain. Ora saw: No OAuth 2.0 or OpenID Connect support detected. ## Our read Albertsons let all four agent user agents through and showed them a page titled Pardon Our Interruption, the interstitial a bot shield serves, and the scan read that title as the brand: the brand search ran on those three words, found nothing, and costs 4.4 points that describe the probe, not the grocer. The page behind it gives 677 characters with a heading tree that skips from H1 to H3, no JSON-LD and no llms.txt; the sitemap is valid and robots.txt allows the search and training crawlers. Ora found no commerce signals on the second largest supermarket chain in the United States, so the six payment checks did not apply on this read. The act layer is empty: no publicly reachable API, and Ora found neither a developer portal nor an OpenAPI specification, neither an MCP server nor OAuth discovery. Its search for Albertsons developer resources found nothing. Serving the real home page to the named agents fixes the door, the brand search and the content row at once. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/albertsons.com, Ora's scan (vendor)](https://ora.ai/api/score/albertsons.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [albertsons.com, the company's site](https://www.albertsons.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [3 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Aldi: the 360 agent-readiness check | Agent Ready Checkout" description: "Aldi on Ora's agent-readiness scan, read 2026-11-14: 38 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/aldi-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-10 section: "360 checks" --- # Aldi: the 360 agent-readiness check | Agent Ready Checkout > Aldi on Ora's agent-readiness scan, read 2026-11-14: 38 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/aldi-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 10 Nov 2026 # Aldi on the pay layer: the 360 agent-readiness check In short Aldi scores 38 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to aldi.us on this read, which is how Ora treats a site it does not read as a shop. The grocer challenges six crawlers; the GraphQL endpoint behind them asks for a key. On 14 Nov 2026 the public site at aldi.us scored **38 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D. Aldi is the German discount grocer's US arm, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: ALDI.us offers OAuth 2.0 support, but lacks an OpenAPI specification. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 6 of 11 | 55% | Can agents find and recommend it | | Access | 10 of 49 | 20% | Can agents read it | | Usability | 29 of 68 | 43% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 38 of 100 | 38% | Grade D | ## The pay layer Ora did not run the six payment checks against aldi.us on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A retailer that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected | | ACP delegate payment | Does not apply | 0 of 3 | ACP in the matrix | No ACP Delegate Payment signals detected | | AP2 | Does not apply | 0 of 3 | AP2 in the matrix | No AP2 (Agent Payments Protocol) signals detected | ## The other layers, check by check Every check Ora ran on aldi.us, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 6 of 11 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json (and no legacy /.well-known/ai-catalog.json) | | Developer resource discoverability | Fail | 0 of 3 | Agent searched for "aldi" developer resources but found nothing relevant | | Brand name discoverability | Pass | 3 of 3 | aldi.us appears at position #3 in a clean brand-name search for "ALDI Grocery Stores" (2 total matches) | | Wikipedia / Wikidata entity presence | Partial | 2 of 4 | Wikipedia "Aldi" verified - create a Wikidata item with P856 (official website) = aldi.us to complete knowledge graph coverage | | robots.txt AI crawler policy | Partial | 1 of 2 | Training: 0/2. Search: 1/3 page/crawler pairs permitted. robots.txt restricts 4/5 evaluated page/crawler pairs. Checked 5 training and search crawlers (gptbot, claudebot, oai-searchbot, claude-searchbot | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | ### Access: 10 of 49 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Pass | 2 of 2 | Valid sitemap found at https://www.aldi.us/sitemaps/storefront_pro/www_aldi_us/sitemap.xml with multiple sitemaps entries | | Content without JavaScript | Partial | 2 of 3 | 1395 chars with H1, but 1.6% content ratio is below the 5% target | | Not blocked by bot detection | Partial | 0 of 2 | Bot management challenged GPTBot, ClaudeBot, ChatGPT-User, PerplexityBot, Google-Extended, Applebot-Extended. A challenge is an identity check that verified crawlers pass | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | Agent mode view | Partial | 1 of 2 | Agent mode view found at ?mode=agent (3 signals: api, agent, integration) | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://aldi.us/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt files found (optional) | | Sitemap freshness (lastmod) | Pass | 1 of 1 | Pass, no detail recorded. | | robots.txt agent-user policy | Partial | 1 of 2 | robots.txt restricts 2/3 evaluated page/crawler pairs. Checked 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page. Restricted: claude-user at https://aldi.us/ (Disallow: /, line 549) | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at /llms.txt or /.well-known/llms.txt. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Fail | 0 of 4 | No JSON-LD structured data found on homepage | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Fail | 0 of 3 | No public API or documentation page linked from homepage | | Agent instruction / when-to-use | Fail | 0 of 3 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Fail | 0 of 2 | No JSON-LD found - no entity linking possible | | Metadata completeness | Partial | 1 of 2 | 2/4 metadata signals present - missing: og:image, og:type | | Organization schema completeness | Fail | 0 of 2 | No JSON-LD found - Organization schema missing | | Schema type breadth | Fail | 0 of 2 | No extended schema types found - AI can only answer basic questions about this entity | | Trust anchor pages | Partial | 1 of 2 | About, Privacy pages verified - missing: Contact | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Pass | 1 of 1 | All 1 measured page fit an agent context budget (largest ~1K tokens) | | OpenAPI spec published | Fail | 0 of 7 | No OpenAPI/Swagger specification found | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://aldi.us does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; charset=utf-8; Vary header missing Accept (got "none") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (GPTBot, ClaudeBot, ChatGPT-User, PerplexityBot, Google-Extended, Applebot-Extended, ora-agent, DeepSeekBot) receives markdown when requesting HTML. | | Agent crawler reachability | Partial | 0 of 2 | Bot management challenged ChatGPT-User, ClaudeBot, Google-Extended - a challenge is an identity check verified crawlers pass, so reachability is undetermined rather than blocked (ChatGPT-User: challenged | ### Usability: 29 of 68 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Pass | 7 of 7 | GraphQL endpoint at https://aldi.us/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. Best-of-protocols score: 7/7. | | OAuth 2.0 support | Pass | 5 of 5 | OAuth endpoint found at https://aldi.us/oauth/authorize | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Partial | 1 of 2 | Onboarding signals described but not verified live: self-serve key generation | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: aldi.us, api.aldi.us. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://aldi.us/api, https://aldi.us/api/v1, https://aldi.us/v1, https://aldi.us/v2, https://aldi.us/agent/identity, https://aldi.us/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 6 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 5 | No WebMCP support detected - no tool-attribute forms and no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages | | Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages | | JSON error responses | Pass | 4 of 4 | Pass, no detail recorded. | | NLWeb /ask endpoint | Pass | 1 of 1 | NLWeb /ask endpoint exists but requires authentication (HTTP 403, via POST) | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask requires authentication - cannot verify streaming | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found at /.well-known/mcp/server-card.json | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages | | GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages | | GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages | | GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages | | Accessible document structure | Pass | 3 of 3 | Pass, no detail recorded. | | Native interactive controls | Pass | 3 of 3 | Pass, no detail recorded. | | Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. | | Form control labeling | Pass | 2 of 2 | Pass, no detail recorded. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | MCP Apps support | Fail | 0 of 4 | No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. | | A2UI / generative UI support | Fail | 0 of 2 | No A2UI or generative UI support detected | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: introspection auth-gated and no schema evidence in docs | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Aldi. Developer resource discoverability Fail, 0 of 3, about 6.1 points to gain. Ora saw: Agent searched for "aldi" developer resources but found nothing relevant. OpenAPI spec published Fail, 0 of 7, about 4.8 points to gain. Ora saw: No OpenAPI/Swagger specification found. MCP server / manifest Fail, 0 of 6, about 3.9 points to gain. Ora saw: No MCP server or manifest found. Scoped permissions Fail, 0 of 5, about 3.3 points to gain. Ora saw: No declared OAuth scopes, security schemes, or scoped-permission documentation found. WebMCP support Fail, 0 of 5, about 3.3 points to gain. Ora saw: No WebMCP support detected - no tool-attribute forms and no document.modelContext / navigator.modelContext usage found. ## Our read Aldi's US site did not read as a shop to Ora: the six payment checks did not apply on this read, so the pay layer is 0 of 0. The door is the story. Bot management challenged GPTBot, ClaudeBot, ChatGPT-User, PerplexityBot, Google-Extended and Applebot-Extended, and robots.txt permits 1 of 3 search pairs, none of the training pairs, and restricts 2 of 3 pairs for the user-triggered agents. Behind it an agent reads 1,395 characters with an H1 at a 1.6 percent content ratio, a valid sitemap, 2 of 4 metadata signals and no JSON-LD; no content pages were sampled, so those rows are unverified rather than failed. The act layer is better than the door: a GraphQL endpoint at aldi.us/graphql asks for a key, OAuth lives at /oauth/authorize, and an NLWeb /ask endpoint sits behind a 403. A search for Aldi's developer resources found nothing, the fix worth most at about 6 points. A D at 38 that shuts the door on the agents who would read the shelves. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/aldi.us, Ora's scan (vendor)](https://ora.ai/api/score/aldi.us?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [aldi.us, the company's site](https://www.aldi.us/store/aldi/storefront), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [3 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Alibaba: the 360 agent-readiness check | Agent Ready Checkout" description: "Alibaba on Ora's agent-readiness scan, read 2026-11-14: 41 of 100, grade D. The pay layer did not apply. One company a day." canonical: https://agentreadycheckout.com/blog/alibaba-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Alibaba: the 360 agent-readiness check | Agent Ready Checkout > Alibaba on Ora's agent-readiness scan, read 2026-11-14: 41 of 100, grade D. The pay layer did not apply. One company a day. Source: https://agentreadycheckout.com/blog/alibaba-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Alibaba on the pay layer: the 360 agent-readiness check In short Alibaba scores 41 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to alibaba.com on this read, which is how Ora treats a site it does not read as a shop. Six agents through the door, onto a home page with zero characters of text. On 14 Nov 2026 the public site at alibaba.com scored **41 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D, in Ora's Identity & Auth category. Alibaba is the business-to-business marketplace of the Alibaba Group, selling from China to the world, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 9 of 11 | 82% | Can agents find and recommend it | | Access | 20.67 of 43 | 48% | Can agents read it | | Usability | 7.43 of 50 | 15% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 41 of 100 | 41% | Grade D | ## The pay layer Ora did not run the six payment checks against alibaba.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A marketplace that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No working way for an agent to pay was found, so payments are not scored | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No working way for an agent to pay was found, so payments are not scored | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No working way for an agent to pay was found, so payments are not scored | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No working way for an agent to pay was found, so payments are not scored | ## The other layers, check by check Every check Ora ran on alibaba.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 9 of 11 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Partial | 0 of 1 | /.well-known/ard.json exists but is not valid JSON | | AI Catalog discovery | Partial | 0 of 1 | /.well-known/ai-catalog.json exists but is not valid JSON | | Developer resource discoverability | Pass | 4 of 4 | Pass, no detail recorded. | | Brand name discoverability | Pass | 3 of 3 | alibaba.com ranks #1 for "Alibaba Manufacturers" and #1 for "Alibaba Suppliers" | | robots.txt AI crawler policy | Pass | 1 of 1 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 1 of 2 checks (2 crawlers on 1 page), not scored. | | NPM/PyPI SDK package | Fail | 0 of 1 | No NPM or PyPI SDK package found | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | | Homepage not hidden from search | Pass | 1 of 1 | No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search. | ### Access: 20.67 of 43 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 1 | No sitemap found | | Content without JavaScript | Partial | 1.67 of 5 | Homepage: 120012 chars of readable text, but no H1 tag. Sampled pages with almost no text without JavaScript (2 of 3): https://rfq.alibaba.com/rfq/profession.htm (78 chars) and http://developer.alibaba.com/doc.htm (22. | | Not blocked by bot detection | Pass | 2 of 2 | Site accessible to 4 agent user-agents (ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot). | | Agent discovery file | Partial | 0 of 2 | /.well-known/agent-skills/index.json exists but is not valid JSON - fix the file or remove it so agents fall back to /.well-known/agent-skills, /agents.md, or /skills.sh | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Pass | 1 of 1 | Pass, no detail recorded. | | pricing.md exists | Partial | 1 of 2 | pricing.md found at /pricing.md (394 lines), but it does not open with a # heading - start it with a # title so agents read it as markdown | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | Link header present but no agent-relevant rel values (sitemap, describedby, alternate, service-desc) | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://alibaba.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | robots.txt agent-user policy | Pass | 1 of 1 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://alibaba.com/. Declared policy only | | llms.txt exists | Partial | 0 of 1 | A file is present at https://alibaba.com/.well-known/llms.txt, but it returns an HTML page rather than a plain-text llms.txt. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Partial | 0.5 of 2 | JSON-LD found (1 block(s)) but no identity type - use SoftwareApplication, Product, Organization, Person, or Article so agents can tell what this site is | | Pricing info accessible | Pass | 3 of 3 | Pass, no detail recorded. | | Public API/docs linked from homepage | Pass | 4 of 4 | Documentation site found at https://developer.alibaba.com | | Agent instruction / when-to-use | Fail | 0 of 1 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Partial | 1 of 2 | Skills.sh presence exists but limited - 4 skills (goal: 5+) | | JSON-LD entity linking (sameAs) | Fail | 0 of 1 | No sameAs entity linking in JSON-LD - agents cannot disambiguate your brand | | Metadata completeness | Partial | 0.5 of 1 | 3/4 metadata signals present - missing: og:image | | Organization schema completeness | Fail | 0 of 1 | No Organization type found in JSON-LD | | Trust anchor pages | Fail | 0 of 1 | No trust anchor pages found with sufficient content (About, Contact, Privacy) | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Partial | 0 of 1 | 1 of 4 measured pages exceed ~25K tokens of extracted text: https://www.alibaba.com/ (~30K tokens). Agents truncate what does not fit - split these into focused pages. | | Content starts near the top | Partial | 0 of 1 | Main content starts late on 1 of 1 measured pages: https://www.alibaba.com/ (26% in). Put navigation after the main content in the markup, or trim it, so an agent that cuts the page keeps the content. | | Content behind auth | Pass | 1 of 1 | All 2 sampled pages are publicly readable (1 with substantive content) | | OpenAPI spec published | Fail | 0 of 8 | No OpenAPI/Swagger specification found | | Developer portal | Pass | 5 of 5 | Developer portal found at /developers | | API catalog (RFC 9727) | Partial | 1 of 2 | api-catalog responded but body is not valid JSON | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://alibaba.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html;charset=utf-8; Vary header missing Accept (got "accept-encoding") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. | | Agent crawler reachability | Pass | 1 of 1 | Reachable to every agent we tested - ChatGPT-User: reachable, OAI-SearchBot: reachable, Claude-User: reachable, PerplexityBot: reachable | ### Usability: 7.43 of 50 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Partial | 3.43 of 8 | API described in documentation at https://developer.alibaba.com but no machine-verifiable API surface confirmed. Best-of-protocols score: 3/7. | | OAuth 2.0 support | Fail | 0 of 5 | No OAuth 2.0 or OpenID Connect support detected | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Pass | 2 of 2 | Pass, no detail recorded. | | Web Bot Auth directory | Partial | 1 of 2 | Web Bot Auth directory found but body is not valid JSON | | auth.md exists | Fail | 0 of 2 | Path https://alibaba.com/auth.md returned HTML (SPA / 404 fallback), not an auth.md document | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: alibaba.com, api.alibaba.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://alibaba.com/api, https://alibaba.com/api/v1, https://alibaba.com/v1, https://alibaba.com/v2, https://alibaba.com/agent/identity | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 10 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 8 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | JSON error responses | Fail | 0 of 3 | API does not return JSON error responses (or no API detected) | | CLI tool available | Fail | 0 of 3 | No CLI tool found | | NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask does not support SSE streaming via GET or POST | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Agent-friendly 404s | Fail | 0 of 2 | Fail, no detail recorded. | | Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | API schema complexity analysis | Partial | 1 of 2 | REST: OpenAPI spec found but failed to parse for complexity analysis | | Function calling compatibility | Partial | 1 of 2 | API spec found but couldn't validate function calling compatibility | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Alibaba. MCP server / manifest Fail, 0 of 10, about 8.9 points to gain. Ora saw: No MCP server or manifest found. WebMCP support Fail, 0 of 8, about 7.1 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found. OpenAPI spec published Fail, 0 of 8, about 6.2 points to gain. Ora saw: No OpenAPI/Swagger specification found. OAuth 2.0 support Fail, 0 of 5, about 4.4 points to gain. Ora saw: No OAuth 2.0 or OpenID Connect support detected. Scoped permissions Fail, 0 of 5, about 4.4 points to gain. Ora saw: No declared OAuth scopes, security schemes, or scoped-permission documentation found. ## Our read Alibaba.com lets all six agent user agents in and shows them nothing: the home page renders zero characters of text without JavaScript, there is no sitemap, no JSON-LD and the llms.txt at /.well-known/llms.txt returns an HTML page. The six payment checks did not apply, because no commerce signal could be read from an empty page, which for the largest business-to-business marketplace in the world is a template problem rather than a policy. The act layer is better than the reading layer: REST documentation scores 7 of 7 and developer.alibaba.com is a real portal, though Ora found neither an OpenAPI specification nor an MCP server, no OAuth discovery, and an agent skills index that does not parse as JSON. robots.txt restricts one of five crawler and page pairs it checked. Ora reads the domain in its Identity and Auth category rather than as a shop. Server-rendered text on the home page is the one fix that opens every reading row. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/alibaba.com, Ora's scan (vendor)](https://ora.ai/api/score/alibaba.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora's scoring rules, version 3 (vendor)](https://ora.ai/api/ranker/releases/3/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 4. [alibaba.com, the company's site](https://www.alibaba.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [4 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Amazon: the 360 agent-readiness check | Agent Ready Checkout" description: "Amazon on Ora's agent-readiness scan, read 2026-11-14: 40 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read." canonical: https://agentreadycheckout.com/blog/amazon-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Amazon: the 360 agent-readiness check | Agent Ready Checkout > Amazon on Ora's agent-readiness scan, read 2026-11-14: 40 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read. Source: https://agentreadycheckout.com/blog/amazon-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Amazon on the pay layer: the 360 agent-readiness check In short Amazon scores 40 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to amazon.com on this read, which is how Ora treats a site it does not read as a shop. At the door, can't verify agent access. A robots.txt that turns the agents away is the whole pay layer. On 14 Nov 2026 the public site at amazon.com scored **40 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D, in Ora's E-commerce category. Amazon is the largest online marketplace in the West, with its own agent, Rufus, and a Buy for Me program, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Turns agents away at the door: robots.txt blocks every search and user-triggered agent, and there is no MCP server or OpenAPI spec. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 10 of 12 | 83% | Can agents find and recommend it | | Access | 14.67 of 40 | 37% | Can agents read it | | Usability | 14 of 69 | 20% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 40 of 100 | 40% | Grade D | ## The pay layer Ora did not run the six payment checks against amazon.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A marketplace that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on amazon.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 10 of 12 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Pass | 4 of 4 | Pass, no detail recorded. | | Brand name discoverability | Pass | 3 of 3 | amazon.com ranks #1 for "amazon Books" and #1 for "amazon Magazine" | | robots.txt AI crawler policy | Fail | 0 of 1 | AI search crawlers: allowed in 0 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 0 of 2 checks (2 crawlers on 1 page), not scored. robots.txt restricts 3/3 evaluated search page/crawler pairs. | | NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Pass | 2 of 2 | Pass, no detail recorded. | ### Access: 14.67 of 40 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 1 | No sitemap found | | Content without JavaScript | Partial | 1.67 of 5 | Homepage: 1990 chars of readable text, but no H1 tag. 2 of 2 sampled inner pages have text without JavaScript (3 skipped). | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://amazon.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt, /prime/llms.txt, /deals/llms.txt, /coupons/llms.txt, /blackfriday/llms.txt. | | robots.txt agent-user policy | Fail | 0 of 1 | robots.txt restricts 3/3 evaluated page/crawler pairs. Checked 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page. Restricted: chatgpt-user at https://amazon.com/ (Disallow: / | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at https://amazon.com/llms.txt. Publish it at the site root, where agents that follow the llms.txt spec look for it. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Fail | 0 of 2 | No JSON-LD structured data found on homepage | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Pass | 4 of 4 | Documentation site found at https://docs.amazon.com | | Agent instruction / when-to-use | Fail | 0 of 1 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Fail | 0 of 1 | No JSON-LD found - no entity linking possible | | Metadata completeness | Partial | 0.5 of 1 | 3/4 metadata signals present - missing: og:type | | Organization schema completeness | Fail | 0 of 1 | No JSON-LD found - Organization schema missing | | Trust anchor pages | Partial | 0.5 of 1 | Only About page verified - missing: Contact, Privacy | | Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add (or the equivalent Link response header) pointing at a markdown twin of the page. | | Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. | | Page token budget | Pass | 1 of 1 | All 3 measured pages fit an agent context budget (largest ~4K tokens) | | Content starts near the top | Pass | 1 of 1 | Pass, no detail recorded. | | Content behind auth | Pass | 1 of 1 | All 5 sampled pages are publicly readable (2 with substantive content) | | OpenAPI spec published | Fail | 0 of 8 | No OpenAPI/Swagger specification found | | Developer portal | Pass | 5 of 5 | Developer portal found at /developer | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://amazon.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html;charset=utf-8; Vary header missing Accept (got "user-agent,accept-encoding") | | Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. | ### Usability: 14 of 69 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Pass | 8 of 8 | REST API documentation found at /api. GraphQL endpoint at https://api.amazon.com/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. | | OAuth 2.0 support | Partial | 2 of 5 | OAuth mentioned on homepage but no standard endpoints found | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Partial | 1 of 2 | Onboarding signals described but not verified live: sandbox/test environment | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: amazon.com, api.amazon.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://amazon.com/api, https://amazon.com/api/v1, https://amazon.com/v1, https://amazon.com/v2, https://amazon.com/agent/identity, https://amazon.com/agent/auth | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 10 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 8 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages | | Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages | | JSON error responses | Fail | 0 of 3 | API does not return JSON error responses (or no API detected) | | NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask does not support SSE streaming via GET or POST | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Pass | 2 of 2 | Pass, no detail recorded. | | GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages | | GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages | | GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages | | GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages | | Agent-friendly 404s | Partial | 1 of 2 | Partial, no detail recorded. | | Native interactive controls | Pass | 3 of 3 | Pass, no detail recorded. | | Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. | | Form control labeling | Pass | 2 of 2 | Pass, no detail recorded. | | Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. | | MCP Apps support | Fail | 0 of 4 | No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. | | A2UI / generative UI support | Fail | 0 of 2 | No A2UI or generative UI support detected | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: introspection auth-gated and no schema evidence in docs | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for Amazon. OpenAPI spec published Fail, 0 of 8, about 6.7 points to gain. Ora saw: No OpenAPI/Swagger specification found. MCP server / manifest Fail, 0 of 10, about 6.4 points to gain. Ora saw: No MCP server or manifest found. WebMCP support Fail, 0 of 8, about 5.2 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found. Scoped permissions Fail, 0 of 5, about 3.2 points to gain. Ora saw: No declared OAuth scopes, security schemes, or scoped-permission documentation found. Content without JavaScript Partial, 1.67 of 5, about 2.8 points to gain. Ora saw: Homepage: 1990 chars of readable text, but no H1 tag. 2 of 2 sampled inner pages have text without JavaScript (3 skipped). ## Our read Amazon's robots.txt is the pay layer here. It disallows the OpenAI, Claude and Perplexity search and user agents on every path, which is why the matrix records ACP and UCP on Amazon as not supported, and Ora's own probe was stopped before it could test the door. The six payment checks were run and found no x402, MPP, UCP, ACP or AP2 signal, so the pay layer reads 0 of 0, and the marketplace that sells more online than any other in the West publishes no protocol for an outside agent to buy through, because its policy is that outside agents do not come in. Behind that, the site is thin for agents: 946 characters of home page without an H1, neither a sitemap nor an llms.txt, and no JSON-LD, with a developer portal and a GraphQL endpoint at api.amazon.com for its partners. Rufus and Buy for Me are the company's answer, inside its own walls. The D is a decision, not an oversight. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/amazon.com, Ora's scan (vendor)](https://ora.ai/api/score/amazon.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora's scoring rules, version 3 (vendor)](https://ora.ai/api/ranker/releases/3/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 4. [amazon.com, the company's site](https://www.amazon.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [4 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "American Airlines: the 360 check | Agent Ready Checkout" description: "American Airlines on Ora's agent-readiness scan, read 2026-11-14: 25 of 100, grade F. The pay layer did not apply. One company a day." canonical: https://agentreadycheckout.com/blog/american-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # American Airlines: the 360 check | Agent Ready Checkout > American Airlines on Ora's agent-readiness scan, read 2026-11-14: 25 of 100, grade F. The pay layer did not apply. One company a day. Source: https://agentreadycheckout.com/blog/american-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # American Airlines on the pay layer: the 360 agent-readiness check In short American Airlines scores 25 of 100 on Ora's agent-readiness scan, an F, read 14 Nov 2026. The six payment checks did not apply to aa.com on this read, which is how Ora treats a site it does not read as a shop. Every agent challenged, and a two-letter domain that search cannot place. On 14 Nov 2026 the public site at aa.com scored **25 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, an F. American Airlines is the largest airline in the world by fleet size, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Public API with reachable endpoints, but lacks an OpenAPI specification. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 8 of 12 | 67% | Can agents find and recommend it | | Access | 2 of 52 | 4% | Can agents read it | | Usability | 11 of 58 | 19% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 25 of 100 | 25% | Grade F | ## The pay layer Ora did not run the six payment checks against aa.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP delegate payment | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | AP2 | Does not apply | 0 of 3 | AP2 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on aa.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 8 of 12 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json (and no legacy /.well-known/ai-catalog.json) | | Developer resource discoverability | Fail | 0 of 3 | Agent searched for "aa" developer resources but found nothing relevant | | Brand name discoverability | Pass | 3 of 3 | aa.com ranks #4 for "aa" (searched your brand name alone: we could not read a product term from your site) | | Wikipedia / Wikidata entity presence | Partial | 2 of 4 | Wikidata Q32396 (American Airlines) verified - draft a Wikipedia page with cited references to complete knowledge graph coverage | | robots.txt AI crawler policy | Pass | 2 of 2 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 2 of 2 checks (2 crawlers on 1 page), not scored. | | NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory | ### Access: 2 of 52 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 2 | No sitemap found | | Content without JavaScript | Partial | 0 of 3 | Homepage blocked by WAF/security challenge - content not accessible to agents | | Not blocked by bot detection | Partial | 0 of 2 | Bot management challenged ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot. A challenge is an identity check that verified crawlers pass | | Agent discovery file | Fail | 0 of 2 | No agent discovery file found | | A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json | | Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) | | pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations | | NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt | | MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered | | Agent mode view | Fail | 0 of 2 | No agent mode view detected at ?mode=agent (optional) | | HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found | | Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://aa.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). | | Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt. This is a bonus check: it can add a point and never costs one. | | robots.txt agent-user policy | Pass | 2 of 2 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://aa.com/. Declared policy only | | llms.txt exists | Fail | 0 of 1 | No llms.txt found at /llms.txt or /.well-known/llms.txt. | | llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality | | JSON-LD structured data | Partial | 0 of 4 | Homepage blocked by WAF - cannot check structured data | | Pricing info accessible | Fail | 0 of 3 | No pricing page or pricing data found | | Public API/docs linked from homepage | Partial | 0 of 3 | Homepage blocked by WAF - cannot check for docs links | | Agent instruction / when-to-use | Fail | 0 of 3 | No agent instruction file with when-to-use guidance found | | Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate | | JSON-LD entity linking (sameAs) | Partial | 0 of 2 | Homepage blocked by WAF - cannot check entity linking | | Metadata completeness | Partial | 0 of 2 | Homepage blocked by WAF - cannot check metadata | | Organization schema completeness | Partial | 0 of 2 | Homepage blocked by WAF - cannot check Organization schema | | Schema type breadth | Partial | 0 of 2 | Homepage blocked by WAF - cannot check schema types | | Trust anchor pages | Fail | 0 of 2 | No trust anchor pages found with sufficient content (About, Contact, Privacy) | | OpenAPI spec published | Fail | 0 of 7 | No OpenAPI/Swagger specification found | | Developer portal | Fail | 0 of 6 | No developer portal found | | API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) | | Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md | | Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://aa.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; Vary header missing Accept (got "none") | | Agent crawler reachability | Partial | 0 of 2 | Bot management challenged ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot - a challenge is an identity check verified crawlers pass, so reachability is undetermined rather than blocked (ChatGPT-User: challenged | ### Usability: 11 of 58 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Public API with reachable endpoints | Pass | 7 of 7 | GraphQL endpoint at https://aa.com/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. Best-of-protocols score: 7/7. | | OAuth 2.0 support | Fail | 0 of 5 | No OAuth 2.0 or OpenID Connect support detected | | Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found | | Agent onboarding friction | Fail | 0 of 2 | Insufficient content to evaluate onboarding friction | | Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found | | OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) | | auth.md exists | Fail | 0 of 2 | No /auth.md found at site root | | auth.md structure | Fail | 0 of 2 | No /auth.md found at site root | | Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: aa.com, api.aa.com. | | Agent auth WWW-Authenticate hint | Fail | 0 of 1 | No 401 with WWW-Authenticate: Bearer resource_metadata=... found. Probed [https://aa.com/api, https://aa.com/api/v1, https://aa.com/v1, https://aa.com/v2, https://aa.com/agent/identity, https://aa.com/agent/auth, https://api.aa.com/api | | agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe | | MCP server / manifest | Fail | 0 of 6 | No MCP server or manifest found | | WebMCP support | Fail | 0 of 5 | No WebMCP support detected - no tool-attribute forms and no document.modelContext / navigator.modelContext usage found | | Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages | | Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages | | JSON error responses | Fail | 0 of 4 | API does not return JSON error responses (or no API detected) | | CLI tool available | Pass | 3 of 3 | CLI tool found on PyPI: aa | | Multi-language SDK packages | Partial | 1 of 3 | SDK package found only in pypi | | NLWeb /ask endpoint | Pass | 1 of 1 | NLWeb /ask endpoint exists but requires authentication (HTTP 403, via GET) | | NLWeb streaming support | Fail | 0 of 1 | NLWeb /ask requires authentication - cannot verify streaming | | MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and /server-card) | | Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. | | Sandbox / test environment | Fail | 0 of 2 | No sandbox or test environment found | | GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages | | GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages | | GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages | | GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages | | API schema complexity analysis | Fail | 0 of 2 | GraphQL: introspection auth-gated and no schema evidence in docs | | Function calling compatibility | Fail | 0 of 2 | No API spec found - function calling requires discoverable endpoints | ## The fixes worth most points Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for American Airlines. Developer resource discoverability Fail, 0 of 3, about 5.6 points to gain. Ora saw: Agent searched for "aa" developer resources but found nothing relevant. MCP server / manifest Fail, 0 of 6, about 4.6 points to gain. Ora saw: No MCP server or manifest found. OpenAPI spec published Fail, 0 of 7, about 4.5 points to gain. Ora saw: No OpenAPI/Swagger specification found. Developer portal Fail, 0 of 6, about 3.8 points to gain. Ora saw: No developer portal found. OAuth 2.0 support Fail, 0 of 5, about 3.8 points to gain. Ora saw: No OAuth 2.0 or OpenID Connect support detected. ## Our read American Airlines challenged ChatGPT-User, OAI-SearchBot, Claude-User and PerplexityBot and returned a security page in place of the home page, so the content and structured-data rows are unverified and the Access layer reads 2 of 52; robots.txt allows the search and training crawlers. Ora found no commerce signals past the wall, so the six payment checks did not apply on this read, on the largest airline in the world by passengers carried. What it could reach is a GraphQL endpoint at aa.com/graphql with introspection gated, and nothing around it: neither a developer portal nor an OpenAPI specification, neither an MCP server nor OAuth discovery, and neither a sitemap nor an llms.txt. The two-letter domain costs it twice: the search for aa developer resources found nothing, 5.6 points, and the brand search placed aa.com fourth for a term that means many things. The door first; nothing behind it can be judged until it opens. ## Test your own checkout The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026). ```bash npx ax@0.10 audit https://example.com --min-score 70 ``` [All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections). ## Sources 1. [ora.ai/api/score/aa.com, Ora's scan (vendor)](https://ora.ai/api/score/aa.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 2. [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026 3. [aa.com, the company's site](https://aa.com/), read 14 Nov 2026 Last reviewed 14 Nov 2026 ## Edition Matrix edition of 4 Nov 2026. Reviewed 14 Nov 2026, [3 sources](#sources-h). ## Method Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours. [Methodology](https://agentreadycheckout.com/method) --- --- title: "Booking.com: the 360 agent-readiness check | Agent Ready Checkout" description: "Booking.com on Ora's agent-readiness scan, read 2026-11-14: 37 of 100, grade D. The pay layer did not apply. One company a day." canonical: https://agentreadycheckout.com/blog/booking-agent-readiness site: "Agent Ready Checkout" last_updated: 2026-11-14 date: 2026-11-09 section: "360 checks" --- # Booking.com: the 360 agent-readiness check | Agent Ready Checkout > Booking.com on Ora's agent-readiness scan, read 2026-11-14: 37 of 100, grade D. The pay layer did not apply. One company a day. Source: https://agentreadycheckout.com/blog/booking-agent-readiness Site: Agent Ready Checkout Last reviewed: 2026-11-14 360 check, 9 Nov 2026 # Booking.com on the pay layer: the 360 agent-readiness check In short Booking.com scores 37 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to booking.com on this read, which is how Ora treats a site it does not read as a shop. A notice asking the agent to enable JavaScript, and a robots.txt that is a web page. On 14 Nov 2026 the public site at booking.com scored **37 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D, in Ora's Travel & Hospitality category. Booking.com is the largest online travel agency in the world by bookings, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Keeps agents at arm's length: no MCP server, no OpenAPI spec, and the homepage renders no text without JavaScript. ## The score | Layer | Points | Share | What the layer asks | | --- | --- | --- | --- | | Discovery | 8.5 of 13 | 65% | Can agents find and recommend it | | Access | 18.17 of 41 | 44% | Can agents read it | | Usability | 9.43 of 54 | 17% | Can agents use it | | Payments | 0 of 0 | none apply | Can agents pay | | | | Total | 37 of 100 | 37% | Grade D | ## The pay layer Ora did not run the six payment checks against booking.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced. | Payment check | Result | Points | Matrix row | What Ora saw | | --- | --- | --- | --- | --- | | x402 | Does not apply | 0 of 2 | x402 in the matrix | No x402 payment protocol support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | MPP | Does not apply | 0 of 2 | MPP in the matrix | No MPP (Machine Payments Protocol) support detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | UCP | Does not apply | 0 of 3 | UCP in the matrix | no UCP (Universal Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | | ACP | Does not apply | 0 of 3 | ACP in the matrix | no ACP (Agentic Commerce Protocol) signals detected. No commerce signals detected - agent-payment protocols are optional for non-commerce sites | ## The other layers, check by check Every check Ora ran on booking.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate. ### Discovery: 8.5 of 13 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json | | Developer resource discoverability | Pass | 4 of 4 | Pass, no detail recorded. | | Brand name discoverability | Partial | 1 of 3 | booking.com ranks #6 for "booking" (searched your brand name alone: no main product term from your homepage qualified) | | robots.txt AI crawler policy | Partial | 0.5 of 1 | robots.txt answered an HTML page instead of rules. Crawlers find no rules in it and read the whole site, so your AI crawler policy is not stated. Serve a plain-text robots.txt | | NPM/PyPI SDK package | Fail | 0 of 1 | No NPM or PyPI SDK package found | | Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. | | Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos | | ChatGPT app listed | Pass | 2 of 2 | Pass, no detail recorded. | | Homepage not hidden from search | Pass | 1 of 1 | No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search. | ### Access: 18.17 of 41 | Check | Result | Points | What Ora saw | | --- | --- | --- | --- | | Sitemap exists | Fail | 0 of 1 | No sitemap found | | Content without JavaScript | Partial | 1.67 of 5 | Homepage: Very little text content (0 chars), and a