{
  "data": {
    "a": {
      "slug": "ecwid",
      "name": "Ecwid by Lightspeed",
      "vendor": "Ecwid, Inc. (Lightspeed Commerce)",
      "vendorUrl": "https://www.ecwid.com",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Ecwid by Lightspeed is a hosted online store that embeds in any website. Its REST API reads and writes products, categories, orders, customers and discounts for one store, with webhooks and a browser JavaScript API for the cart.",
      "url": "https://www.anchorterminal.com/tools/ecwid",
      "markdownUrl": "https://www.anchorterminal.com/tools/ecwid.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ecwid.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ecwid.json",
      "repo": "https://github.com/Ecwid/ecwid-java-api-client",
      "license": "Proprietary service under the Lightspeed Service Agreement. The `@lightspeed/ecom-headless` npm package is MIT and the Java API client on GitHub is Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://app.ecwid.com/api/v3",
      "packages": [
        {
          "registry": "npm",
          "name": "@lightspeed/ecom-headless"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve for one store. The store admin creates a custom app automatically, with a secret token and a public token sent as `Authorization: Bearer`, and no OAuth flow. Seven of the 40 access scopes are on by default, more are added in the admin, and scopes marked sensitive need a request to API support. Public apps for many stores use OAuth 2.0 and go through app review. Tokens don't expire and are revoked by uninstalling the app.",
      "pricing": "paid",
      "pricingNotes": "Starter $5 a month, Venture $35 ($29 billed yearly), Business $65 ($49) and Unlimited $149 ($119), with no transaction fee from Ecwid. The docs say only paid plans reach the API, and the pricing page does not list API access by plan. No free plan, trial or sandbox was found. Developers can email API support for a free upgrade of a test store (https://www.ecwid.com/pricing, checked 2026-10-08).",
      "priceSummary": "$5 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs or on the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 22,
        "npmWeekly": 307,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.ecwid.com",
      "llmsTxt": "https://docs.ecwid.com/llms.txt",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "api-key",
        "oauth",
        "llms-txt",
        "webhooks",
        "typescript",
        "java",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.2,
        "grade": "B",
        "agentReady": false,
        "rank": 316,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 12,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 79,
          "payments": 15,
          "reliability": 80,
          "schema": 66,
          "security": 61,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API has 40 access scopes, a published limit of 600 requests a minute per token with `Retry-After` on a 429, field selection through `responseFields`, and Markdown docs with an llms.txt index. Tokens never expire, there is no test mode or idempotency key, API access needs a paid plan, and carts are built only in the browser.",
        "bestFor": "An agent doing back-office work on an existing Ecwid store, such as catalogue edits, order export and discount coupons.",
        "strengths": [
          "40 access scopes split into read, update and create, plus a public token limited to enabled catalogue data and unpaid orders",
          "Published limit of 600 requests a minute per token, and a 429 carries a `Retry-After` header",
          "`responseFields` trims any response to named fields, and searches page with `offset` and `limit` up to 100",
          "Every docs page is served as Markdown, with `llms.txt` and `llms-full.txt` indexes",
          "One incident on status.ecwid.com between 10 July and 8 October 2026, a 48-minute storefront slowdown on 7 August"
        ],
        "weaknesses": [
          "Access tokens never expire and change only when the app is uninstalled and installed again",
          "No test mode. The docs advise a separate test store, and only stores on paid plans can call the API",
          "No idempotency keys on REST writes found in the reviewed documentation",
          "OpenAPI 3.0.3 definitions are published for store profile and orders only, with no complete downloadable spec found",
          "The REST API has no endpoint that builds a live cart or runs checkout. Those sit in the browser JavaScript API",
          "The service agreement disclaims any service level commitment"
        ],
        "agentNotes": [
          "Send the token as `Authorization: Bearer` to `https://app.ecwid.com/api/v3/{storeId}`. Tokens in the query string stopped working in March 2025",
          "Use the secret token server-side only. The public token reads enabled products and places orders that are not marked paid",
          "Add `responseFields`, for example `total,items(id,name,price)`, to keep responses small, and page with `offset` and `limit` (maximum 100)",
          "Stay under 600 requests a minute per token and wait the `Retry-After` seconds on a 429. Repeated calls with a bad token get the token and IP blocked for longer",
          "Work in a separate test store. There is no test mode, and `POST /orders` writes a real order with no idempotency key",
          "After changing an app's scopes, uninstall and reinstall it, then replace the stored tokens. The old ones stop working"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.2
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 79,
          "payments": 15,
          "reliability": 80,
          "schema": 66,
          "security": 61,
          "transparency": 56
        },
        "provenanceScore": 87
      },
      "connect": {
        "install": "npm install @lightspeed/ecom-headless",
        "http": "curl \"https://app.ecwid.com/api/v3/$ECWID_STORE_ID/profile?responseFields=generalInfo(storeId,storeUrl)\" \\\n  -H \"Authorization: Bearer $ECWID_SECRET_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/ecwid"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 5,
          "note": "up to 10 products. The docs say only paid plans reach the API and the pricing page does not list API access by plan"
        },
        {
          "item": "Venture",
          "unit": "month",
          "usd": 35,
          "note": "$29 a month billed yearly, up to 100 products"
        },
        {
          "item": "Business",
          "unit": "month",
          "usd": 65,
          "note": "$49 a month billed yearly, up to 2,500 products"
        },
        {
          "item": "Unlimited",
          "unit": "month",
          "usd": 149,
          "note": "$119 a month billed yearly, unlimited products"
        }
      ],
      "provenance": {
        "legalEntity": "Ecwid, Inc.",
        "domain": "ecwid.com",
        "domainRegistered": "2009-01-08",
        "endpointOnVendorDomain": true,
        "terms": "https://www.lightspeedhq.com/legal/lightspeed-service-agreement/",
        "privacy": "https://www.lightspeedhq.com/legal/privacy-policy/",
        "statusPage": "https://status.ecwid.com",
        "changelog": "https://docs.ecwid.com/changelog/ecwid-api-changelog",
        "securityTxt": "unknown",
        "checked": "2026-10-08",
        "notes": [
          "www.ecwid.com/terms-of-service redirects to the Lightspeed Service Agreement (last updated 26 February 2026), whose contracting-entity table names Ecwid, Inc., Delaware, for Lightspeed eCom (E-Series) worldwide.",
          "The service agreement says API use is governed by Lightspeed's API licence agreement at https://developers.lightspeedhq.com/terms (effective 20 May 2025), which does not name Ecwid or E-Series.",
          "www.ecwid.com/privacy-policy and /eu-privacy-policy redirect to Lightspeed's privacy policy (effective 8 July 2026), which lists Ecwid, Inc. among the entities certified under the Data Privacy Framework.",
          "www.ecwid.com/.well-known/security.txt answered 403 and www.lightspeedhq.com/.well-known/security.txt answered 404, so no security.txt was read.",
          "RDAP for ecwid.com gives a registration date of 2009-01-08.",
          "The REST API answers at app.ecwid.com. Docs are hosted on GitBook at docs.ecwid.com."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/ecwid.json",
      "live": {
        "slug": "ecwid",
        "probe": {
          "target": "https://app.ecwid.com/api/v3",
          "method": "get",
          "lastAt": "2026-10-08T21:12:09.334118611Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 124,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 102,
          "p95ms24h": 127,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.ecwid.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:01.196078974Z"
        },
        "updatedAt": "2026-10-08T21:12:09.334118611Z"
      }
    },
    "answer": "Square scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability.",
    "b": {
      "slug": "square",
      "name": "Square",
      "vendor": "Block, Inc.",
      "vendorUrl": "https://squareup.com",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Square is Block's commerce and payments platform for sellers. Its REST API covers catalogue, orders, payment links, payments, inventory and customers, with seven SDKs and a beta MCP server hosted at mcp.squareup.com.",
      "url": "https://www.anchorterminal.com/tools/square",
      "markdownUrl": "https://www.anchorterminal.com/tools/square.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/square.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/square.json",
      "repo": "https://github.com/square/square-mcp-server",
      "license": "Proprietary service under the Square Developer Terms of Service. The MCP server and the OpenAPI specification on GitHub are Apache 2.0, and the Node.js SDK is MIT",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://mcp.squareup.com/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "square"
        },
        {
          "registry": "npm",
          "name": "square-mcp-server"
        },
        {
          "registry": "pypi",
          "name": "squareup"
        }
      ],
      "auth": "mixed",
      "authNotes": "Access needs a Square account and an application created in the Developer Console, both self-serve. Two token types go in the `Authorization: Bearer` header. A personal access token gives unrestricted access to the owner's own account, with a separate sandbox token. OAuth access tokens are limited to the scopes a seller grants, expire after 30 days and can be refreshed and revoked. The remote MCP server signs in through OAuth, and Square keeps an allowlist of MCP clients that may register.",
      "pricing": "usage",
      "pricingNotes": "The API and sandbox carry no charge. Sellers pay processing fees, 2.9% + 30 cents for card payments through the payments APIs in the US. Square Free is $0 a month, Plus $49 and Premium $149 per location. The sandbox lets an agent start without a contract (https://squareup.com/us/en/payments/our-fees, checked 2026-10-08).",
      "priceSummary": "2.9% fee",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index at developer.squareup.com/llms.txt or the OpenAPI spec (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 3,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 453743,
        "pypiWeekly": 72138,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.squareup.com/docs",
      "llmsTxt": "https://developer.squareup.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/square/connect-api-specification/master/api.json",
      "capabilities": [
        "commerce.products",
        "commerce.orders",
        "commerce.checkout",
        "commerce.cart",
        "commerce.headless",
        "payments.card",
        "payments.checkout"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "graphql",
        "typescript",
        "python",
        "status-page",
        "bug-bounty"
      ],
      "lastRelease": "2026-09-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.2,
        "grade": "B",
        "agentReady": false,
        "rank": 166,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 81,
          "payments": 40,
          "reliability": 58,
          "schema": 87,
          "security": 67,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API has a public OpenAPI 3.0 spec, OAuth scopes split by read and write for each resource, idempotency keys on writes and a free sandbox. The MCP server is in beta and its remote instance reaches production only. No numeric REST rate limits or SLA were found, and the status page recorded widespread errors on 27 September 2026.",
        "bestFor": "Agents working for a seller already on Square, on catalogue, inventory, orders, payment links and customers, online and in person.",
        "strengths": [
          "Public OpenAPI 3.0 spec with 332 operations and 1,476 schemas, regenerated for API version 2026-09-16",
          "OAuth scopes are split by read and write for each resource, and access tokens expire after 30 days",
          "78 request schemas carry an `idempotency_key`, and the docs describe backoff with jitter for 429 responses",
          "Free sandbox at connect.squareupsandbox.com with test cards, and API Logs kept for 28 days",
          "Deprecated APIs are typically retired at least 12 months after deprecation, with dated release notes each month"
        ],
        "weaknesses": [
          "The MCP server is marked beta, and the remote server reaches production data only",
          "No numeric rate limits were found for the REST API. Only GraphQL states a figure, 10 queries a second",
          "No SLA was found in the developer terms or documentation",
          "The status page recorded widespread latency and errors on 27 September 2026, including payment authorisation",
          "A personal access token grants unrestricted access to the whole Square account",
          "97 of the 332 operations in the spec are marked beta"
        ],
        "agentNotes": [
          "Test against the sandbox first with the local MCP server and `SANDBOX=true`. The remote server at mcp.squareup.com reaches production only",
          "Set `DISALLOW_WRITES=true` on the local MCP server when the task only reads",
          "Call `get_service_info`, then `get_type_info`, before each `make_api_request`. The request body is otherwise untyped",
          "Send a fresh `idempotency_key` on every write, and reuse it when retrying the same write",
          "Pin `Square-Version` in each request. Use a page cursor within 5 minutes of receiving it"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.2
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 81,
          "payments": 40,
          "reliability": 58,
          "schema": 87,
          "security": 67,
          "transparency": 56
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "npx square-mcp-server start",
        "http": "curl https://connect.squareupsandbox.com/v2/locations \\\n  -H 'Square-Version: 2026-09-16' \\\n  -H 'Authorization: Bearer {SANDBOX_ACCESS_TOKEN}' \\\n  -H 'Content-Type: application/json'",
        "config": {
          "mcpServers": {
            "mcp_square_api": {
              "args": [
                "mcp-remote",
                "https://mcp.squareup.com/mcp"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/square"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Card payment through the payments APIs (US)",
          "unit": "pct",
          "usd": 2.9,
          "note": "plus 30 cents per transaction"
        },
        {
          "item": "ACH bank transfer through the API (US)",
          "unit": "pct",
          "usd": 1,
          "note": "$1 minimum, $5 fee cap"
        },
        {
          "item": "Square Free",
          "unit": "month",
          "usd": 0,
          "note": "per location"
        },
        {
          "item": "Square Plus",
          "unit": "month",
          "usd": 49,
          "note": "per location"
        },
        {
          "item": "Square Premium",
          "unit": "month",
          "usd": 149,
          "note": "per location"
        }
      ],
      "provenance": {
        "legalEntity": "Block, Inc.",
        "domain": "squareup.com",
        "domainRegistered": "2007-05-26",
        "endpointOnVendorDomain": true,
        "terms": "https://squareup.com/us/en/legal/general/developers",
        "privacy": "https://squareup.com/us/en/legal/general/privacy",
        "statusPage": "https://www.issquareup.com",
        "changelog": "https://developer.squareup.com/docs/changelog/connect",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Square Developer Terms of Service (last updated 10 September 2026) are an agreement with Block, Inc. and govern the APIs, SDKs and developer tools. Payment processing through an API is also subject to Square's General Terms.",
          "The Privacy Notice for Square Sellers and Website Visitors (last updated 15 September 2026) names Block, Inc., 1955 Broadway, Suite 600, Oakland, CA 94612 as the entity for US sellers, with other Square entities for Canada, Japan, Australia and the EU.",
          "The API answers at connect.squareup.com and the remote MCP server at mcp.squareup.com. The sandbox uses the separate domain squareupsandbox.com.",
          "squareup.com/.well-known/security.txt and developer.squareup.com/.well-known/security.txt return 404. The security page links a Bugcrowd programme.",
          "RDAP for squareup.com gives a registration date of 2007-05-26."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/square.json",
      "live": {
        "slug": "square",
        "probe": {
          "target": "https://mcp.squareup.com/mcp",
          "method": "get",
          "lastAt": "2026-10-08T21:12:22.366566664Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 42,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 54,
          "p95ms24h": 137,
          "samples24h": 41,
          "samples30d": 41,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 41,
              "ok": 41
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.issquareup.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:26.785971303Z"
        },
        "pages": [
          {
            "url": "https://developer.squareup.com/docs/changelog/connect",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:17:18.308620553Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "62494a1dd472"
          },
          {
            "url": "https://squareup.com/us/en/legal/general/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:24:44.136652202Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "18b57fb2f3f3"
          },
          {
            "url": "https://squareup.com/us/en/legal/general/developers",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:24:40.889937356Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "10ccc5457da5"
          }
        ],
        "updatedAt": "2026-10-08T21:12:22.366566664Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Ecwid, Inc. (Lightspeed Commerce)",
        "b": "Block, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://app.ecwid.com/api/v3",
        "b": "https://mcp.squareup.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Lightspeed Service Agreement. The `@lightspeed/ecom-headless` npm package is MIT and the Java API client on GitHub is Apache-2.0",
        "b": "Proprietary service under the Square Developer Terms of Service. The MCP server and the OpenAPI specification on GitHub are Apache 2.0, and the Node.js SDK is MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "3",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-30",
        "b": "2026-09-16",
        "name": "Last release"
      },
      {
        "a": "2026-02-26",
        "b": "2026-09-10",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2026-09-15",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "22 stars, 307 npm/wk",
        "b": "454k npm/wk, 72k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Square scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability.",
        "question": "Which is better for AI agents, Ecwid by Lightspeed or Square?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Ecwid by Lightspeed and Square need an API key?"
      },
      {
        "answer": "Yes. Ecwid by Lightspeed has a hosted endpoint at https://app.ecwid.com/api/v3 and Square at https://mcp.squareup.com/mcp.",
        "question": "Can an agent call Ecwid by Lightspeed and Square without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 58"
        ],
        "also": null,
        "goodFor": "An agent doing back-office work on an existing Ecwid store, such as catalogue edits, order export and discount coupons.",
        "slug": "ecwid",
        "watchFor": "Access tokens never expire and change only when the app is uninstalled and installed again"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 87 against 66",
          "Agent ergonomics, 83 against 66",
          "Security \u0026 auth, 67 against 61",
          "Payments \u0026 pricing, 40 against 15"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Agents working for a seller already on Square, on catalogue, inventory, orders, payment links and customers, online and in person.",
        "slug": "square",
        "watchFor": "The MCP server is marked beta, and the remote server reaches production data only"
      }
    ],
    "job": {
      "capability": "commerce.products",
      "name": "Commerce products"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-ecwid.json",
        "title": "Adobe Commerce (Magento) vs Ecwid by Lightspeed",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-ecwid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-square.json",
        "title": "Adobe Commerce (Magento) vs Square",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-ecwid.json",
        "title": "BigCommerce API + MCP vs Ecwid by Lightspeed",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-ecwid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-square.json",
        "title": "BigCommerce API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-ecwid.json",
        "title": "Commerce Layer API + MCP vs Ecwid by Lightspeed",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-ecwid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-square.json",
        "title": "Commerce Layer API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-ecwid.json",
        "title": "commercetools vs Ecwid by Lightspeed",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-ecwid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-square.json",
        "title": "commercetools vs Square",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-elastic-path.json",
        "title": "Ecwid by Lightspeed vs Elastic Path API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-elastic-path"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-medusa.json",
        "title": "Ecwid by Lightspeed vs Medusa API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-medusa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-saleor.json",
        "title": "Ecwid by Lightspeed vs Saleor API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-saleor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-shopify.json",
        "title": "Ecwid by Lightspeed vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-shopware.json",
        "title": "Ecwid by Lightspeed vs Shopware",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-shopware"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-snipcart.json",
        "title": "Ecwid by Lightspeed vs Snipcart API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-snipcart"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-swell.json",
        "title": "Ecwid by Lightspeed vs Swell",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-vendure.json",
        "title": "Ecwid by Lightspeed vs Vendure",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-wix.json",
        "title": "Ecwid by Lightspeed vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-woocommerce.json",
        "title": "Ecwid by Lightspeed vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-woocommerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elastic-path-vs-square.json",
        "title": "Elastic Path API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/elastic-path-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medusa-vs-square.json",
        "title": "Medusa API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/medusa-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/saleor-vs-square.json",
        "title": "Saleor API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/saleor-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-square.json",
        "title": "Shopify API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopware-vs-square.json",
        "title": "Shopware vs Square",
        "url": "https://www.anchorterminal.com/compare/shopware-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/snipcart-vs-square.json",
        "title": "Snipcart API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/snipcart-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-vs-swell.json",
        "title": "Square vs Swell",
        "url": "https://www.anchorterminal.com/compare/square-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-vs-vendure.json",
        "title": "Square vs Vendure",
        "url": "https://www.anchorterminal.com/compare/square-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-vs-wix.json",
        "title": "Square vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/square-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-vs-woocommerce.json",
        "title": "Square vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/square-vs-woocommerce"
      }
    ],
    "scores": [
      {
        "by": 22,
        "ecwid": 80,
        "edge": "ecwid",
        "key": "reliability",
        "name": "Reliability",
        "square": 58,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 21,
        "ecwid": 66,
        "edge": "square",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "square": 87,
        "weight": 13
      },
      {
        "by": 17,
        "ecwid": 66,
        "edge": "square",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "square": 83,
        "weight": 13
      },
      {
        "by": 6,
        "ecwid": 61,
        "edge": "square",
        "key": "security",
        "name": "Security \u0026 auth",
        "square": 67,
        "weight": 14
      },
      {
        "by": 25,
        "ecwid": 15,
        "edge": "square",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "square": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "ecwid": 79,
        "edge": "square",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "square": 81,
        "weight": 7
      },
      {
        "by": 2,
        "ecwid": 72,
        "edge": "ecwid",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "square": 70,
        "weight": 7
      }
    ],
    "summary": "Square scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability. Both do commerce products.",
    "verdicts": {
      "ecwid": "The REST API has 40 access scopes, a published limit of 600 requests a minute per token with `Retry-After` on a 429, field selection through `responseFields`, and Markdown docs with an llms.txt index. Tokens never expire, there is no test mode or idempotency key, API access needs a paid plan, and carts are built only in the browser.",
      "square": "The REST API has a public OpenAPI 3.0 spec, OAuth scopes split by read and write for each resource, idempotency keys on writes and a free sandbox. The MCP server is in beta and its remote instance reaches production only. No numeric REST rate limits or SLA were found, and the status page recorded widespread errors on 27 September 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/ecwid-vs-square",
    "json": "https://www.anchorterminal.com/compare/ecwid-vs-square.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/ecwid-vs-square.md",
    "slim": "https://www.anchorterminal.com/compare/ecwid-vs-square.min.md"
  },
  "markdown": "Square scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability. Both do commerce products.\n\n- Ecwid by Lightspeed: grade B, 63.2/100, rank #316 of 722. Markdown https://www.anchorterminal.com/tools/ecwid.md · JSON https://www.anchorterminal.com/api/v1/tools/ecwid.json\n- Square: grade B, 69.2/100, rank #166 of 722. Markdown https://www.anchorterminal.com/tools/square.md · JSON https://www.anchorterminal.com/api/v1/tools/square.json\n\n## Which one, for what\n\n### Ecwid by Lightspeed (B)\n\nGood for: An agent doing back-office work on an existing Ecwid store, such as catalogue edits, order export and discount coupons.\n\nAhead on:\n- Reliability, 80 against 58\n\nWatch for: Access tokens never expire and change only when the app is uninstalled and installed again\n\n### Square (B)\n\nGood for: Agents working for a seller already on Square, on catalogue, inventory, orders, payment links and customers, online and in person.\n\nAhead on:\n- Schema \u0026 documentation, 87 against 66\n- Agent ergonomics, 83 against 66\n- Security \u0026 auth, 67 against 61\n- Payments \u0026 pricing, 40 against 15\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: The MCP server is marked beta, and the remote server reaches production data only\n\n\n## Score by category\n\n| Category | Weight | Ecwid by Lightspeed | Square | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 58 | Ecwid by Lightspeed +22 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 66 | 87 | Square +21 |\n| Agent ergonomics | 13% (16.2 this run) | 66 | 83 | Square +17 |\n| Security \u0026 auth | 14% (17.5 this run) | 61 | 67 | Square +6 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 15 | 40 | Square +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 79 | 81 | Square +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 70 | Ecwid by Lightspeed +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.2 · B** | **69.2 · B** | |\n\n## Facts side by side\n\n| Fact | Ecwid by Lightspeed | Square |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Ecwid, Inc. (Lightspeed Commerce) | Block, Inc. |\n| Hosted endpoint | `https://app.ecwid.com/api/v3` | `https://mcp.squareup.com/mcp` |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service under the Lightspeed Service Agreement. The `@lightspeed/ecom-headless` npm package is MIT and the Java API client on GitHub is Apache-2.0 | Proprietary service under the Square Developer Terms of Service. The MCP server and the OpenAPI specification on GitHub are Apache 2.0, and the Node.js SDK is MIT |\n| Tools exposed | none | 3 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-30 | 2026-09-16 |\n| Terms last updated | 2026-02-26 | 2026-09-10 |\n| Privacy policy last updated | no date given | 2026-09-15 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 22 stars, 307 npm/wk | 454k npm/wk, 72k PyPI/wk |\n\n## Verdicts\n\n**Ecwid by Lightspeed.** The REST API has 40 access scopes, a published limit of 600 requests a minute per token with `Retry-After` on a 429, field selection through `responseFields`, and Markdown docs with an llms.txt index. Tokens never expire, there is no test mode or idempotency key, API access needs a paid plan, and carts are built only in the browser.\n\n**Square.** The REST API has a public OpenAPI 3.0 spec, OAuth scopes split by read and write for each resource, idempotency keys on writes and a free sandbox. The MCP server is in beta and its remote instance reaches production only. No numeric REST rate limits or SLA were found, and the status page recorded widespread errors on 27 September 2026.\n\n## Before you call either\n\n### Ecwid by Lightspeed\n\n1. Send the token as `Authorization: Bearer` to `https://app.ecwid.com/api/v3/{storeId}`. Tokens in the query string stopped working in March 2025\n2. Use the secret token server-side only. The public token reads enabled products and places orders that are not marked paid\n3. Add `responseFields`, for example `total,items(id,name,price)`, to keep responses small, and page with `offset` and `limit` (maximum 100)\n4. Stay under 600 requests a minute per token and wait the `Retry-After` seconds on a 429. Repeated calls with a bad token get the token and IP blocked for longer\n5. Work in a separate test store. There is no test mode, and `POST /orders` writes a real order with no idempotency key\n6. After changing an app's scopes, uninstall and reinstall it, then replace the stored tokens. The old ones stop working\n\n### Square\n\n1. Test against the sandbox first with the local MCP server and `SANDBOX=true`. The remote server at mcp.squareup.com reaches production only\n2. Set `DISALLOW_WRITES=true` on the local MCP server when the task only reads\n3. Call `get_service_info`, then `get_type_info`, before each `make_api_request`. The request body is otherwise untyped\n4. Send a fresh `idempotency_key` on every write, and reuse it when retrying the same write\n5. Pin `Square-Version` in each request. Use a page cursor within 5 minutes of receiving it\n\n## Questions\n\n### Which is better for AI agents, Ecwid by Lightspeed or Square?\n\nSquare scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability.\n\n### Do Ecwid by Lightspeed and Square need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Ecwid by Lightspeed and Square without installing anything?\n\nYes. Ecwid by Lightspeed has a hosted endpoint at https://app.ecwid.com/api/v3 and Square at https://mcp.squareup.com/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/ecwid-vs-square.json, and with the fewest tokens: https://www.anchorterminal.com/compare/ecwid-vs-square.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"ecwid\", \"b\": \"square\"}`. From a terminal: `anchor compare ecwid square`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/ecwid.json and https://www.anchorterminal.com/api/v1/tools/square.json\n\n## Other comparisons with Ecwid by Lightspeed or Square\n\n- [Adobe Commerce (Magento) vs Ecwid by Lightspeed](https://www.anchorterminal.com/compare/adobe-commerce-vs-ecwid.md)\n- [Adobe Commerce (Magento) vs Square](https://www.anchorterminal.com/compare/adobe-commerce-vs-square.md)\n- [BigCommerce API + MCP vs Ecwid by Lightspeed](https://www.anchorterminal.com/compare/bigcommerce-vs-ecwid.md)\n- [BigCommerce API + MCP vs Square](https://www.anchorterminal.com/compare/bigcommerce-vs-square.md)\n- [Commerce Layer API + MCP vs Ecwid by Lightspeed](https://www.anchorterminal.com/compare/commerce-layer-vs-ecwid.md)\n- [Commerce Layer API + MCP vs Square](https://www.anchorterminal.com/compare/commerce-layer-vs-square.md)\n- [commercetools vs Ecwid by Lightspeed](https://www.anchorterminal.com/compare/commercetools-vs-ecwid.md)\n- [commercetools vs Square](https://www.anchorterminal.com/compare/commercetools-vs-square.md)\n- [Ecwid by Lightspeed vs Elastic Path API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-elastic-path.md)\n- [Ecwid by Lightspeed vs Medusa API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-medusa.md)\n- [Ecwid by Lightspeed vs Saleor API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-saleor.md)\n- [Ecwid by Lightspeed vs Shopify API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-shopify.md)\n- [Ecwid by Lightspeed vs Shopware](https://www.anchorterminal.com/compare/ecwid-vs-shopware.md)\n- [Ecwid by Lightspeed vs Snipcart API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-snipcart.md)\n- [Ecwid by Lightspeed vs Swell](https://www.anchorterminal.com/compare/ecwid-vs-swell.md)\n- [Ecwid by Lightspeed vs Vendure](https://www.anchorterminal.com/compare/ecwid-vs-vendure.md)\n- [Ecwid by Lightspeed vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/ecwid-vs-wix.md)\n- [Ecwid by Lightspeed vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-woocommerce.md)\n- [Elastic Path API + MCP vs Square](https://www.anchorterminal.com/compare/elastic-path-vs-square.md)\n- [Medusa API + MCP vs Square](https://www.anchorterminal.com/compare/medusa-vs-square.md)\n- [Saleor API + MCP vs Square](https://www.anchorterminal.com/compare/saleor-vs-square.md)\n- [Shopify API + MCP vs Square](https://www.anchorterminal.com/compare/shopify-vs-square.md)\n- [Shopware vs Square](https://www.anchorterminal.com/compare/shopware-vs-square.md)\n- [Snipcart API + MCP vs Square](https://www.anchorterminal.com/compare/snipcart-vs-square.md)\n- [Square vs Swell](https://www.anchorterminal.com/compare/square-vs-swell.md)\n- [Square vs Vendure](https://www.anchorterminal.com/compare/square-vs-vendure.md)\n- [Square vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/square-vs-wix.md)\n- [Square vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/square-vs-woocommerce.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Ecwid by Lightspeed vs Square",
        "url": ""
      }
    ],
    "description": "Square scores 69.2 (B) on agent readiness against Ecwid by Lightspeed's 63.2 (B), and leads in 5 of 7 scored categories. Ecwid by Lightspeed leads on reliability. Both do commerce products. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Ecwid by Lightspeed B 63.2",
      "Square B 69.2",
      "scores"
    ],
    "h1": "Ecwid by Lightspeed vs Square",
    "image": "https://www.anchorterminal.com/assets/og/compare-ecwid-vs-square.png",
    "path": "/compare/ecwid-vs-square",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Ecwid by Lightspeed vs Square for AI agents, B 63.2 vs B 69.2",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/ecwid-vs-square"
  },
  "tokens": {
    "markdown": 2600,
    "slim": 730
  },
  "version": 1
}
