{
  "data": {
    "a": {
      "slug": "stripe-identity",
      "name": "Stripe Identity",
      "vendor": "Stripe, LLC",
      "vendorUrl": "https://stripe.com/identity",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Stripe Identity verifies government-issued photo IDs from more than 120 countries, matches them to selfies and validates US Social Security numbers. Sessions are created and read through the Stripe API, and the end user completes the check in Stripe's flow.",
      "url": "https://www.anchorterminal.com/tools/stripe-identity",
      "markdownUrl": "https://www.anchorterminal.com/tools/stripe-identity.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/stripe-identity.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/stripe-identity.json",
      "repo": "https://github.com/stripe/openapi",
      "license": "Proprietary service under the Stripe Services Agreement and Stripe Identity Terms. The OpenAPI spec and official SDKs are MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "stripe"
        },
        {
          "registry": "pypi",
          "name": "stripe"
        }
      ],
      "auth": "api-key",
      "authNotes": "Stripe secret key, restricted key or IP-restricted key, sent as HTTP basic auth or a Bearer token to https://api.stripe.com. Results such as status, name and address need only a secret key. Date of birth, ID number and document images need a restricted key with Identity permissions, which can read them for verifications in the last 48 hours, or for all verifications once the key is IP-restricted. Identity is activated through an application in the Dashboard (checked 2026-10-14).",
      "pricing": "usage",
      "pricingNotes": "£1.25 per completed document and selfie verification and 35p per ID number lookup (US SSNs only), charged when the user completes verification, on the United Kingdom page our network was served. The first 50 verifications are free. Custom pricing is offered above 2,000 verifications a month (https://stripe.com/identity, checked 2026-10-14).",
      "priceSummary": "Pay per use",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the Identity endpoints, the Identity docs or the product page (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 24154234,
        "pypiWeekly": 11360574,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.stripe.com/identity",
      "llmsTxt": "https://docs.stripe.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/stripe/openapi/master/openapi/spec3.json",
      "capabilities": [
        "kyc.identity",
        "kyc.documents"
      ],
      "tags": [
        "hosted",
        "api-key",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "free-tier",
        "status-page",
        "python",
        "typescript",
        "go",
        "java",
        "ruby",
        "php",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 77.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 21,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 93,
          "maintenance": 85,
          "payments": 40,
          "reliability": 62,
          "schema": 94,
          "security": 86,
          "transparency": 85
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Stripe Identity runs on the Stripe API, with a public OpenAPI spec, idempotency keys, restricted keys for sensitive fields and a redact endpoint. The product page lists £1.25 per document and selfie check, and the first 50 are free. It has no watchlist or business screening, and outside GB, JP and the US it is in public beta.",
        "bestFor": "A business already on Stripe that needs document and selfie checks or US SSN validation with published prices.",
        "strengths": [
          "Six typed Identity operations in Stripe's public OpenAPI spec, with Markdown docs and llms.txt",
          "Date of birth and ID number need a restricted key, and IP-restricted keys for reads after 48 hours",
          "Idempotency keys on every POST and cursor pagination with status and date filters",
          "Published prices of £1.25 per verification and 35p per US SSN lookup, with the first 50 verifications free",
          "`redact` removes personal data from the session, reports, events and request logs, confirmed by a webhook"
        ],
        "weaknesses": [
          "Document, selfie and US SSN checks only. No sanctions or watchlist screening and no business verification",
          "Generally available only for businesses in GB, JP and the US, and a public beta in 30 other countries",
          "Use for credit, housing, employment or insurance decisions, and resale of results, are forbidden by the terms",
          "status.stripe.com renders only in JavaScript, so the incident history couldn't be read",
          "Stripe keeps a copy of verification data after redaction until the end user asks Stripe support to delete it"
        ],
        "agentNotes": [
          "Send an Idempotency-Key based on your user reference when creating a VerificationSession, so a retry doesn't make a second session",
          "Send the end user the session URL or client secret. The person completes the check, the agent can't. Links expire after 48 hours",
          "Use a restricted key for `verified_outputs.dob` and `id_number`. Without an IP restriction it reads them only for 48 hours",
          "Wait for `identity.verification_session.verified` or `requires_input` webhooks instead of polling",
          "Treat `redact` as irreversible, and don't put personal data in metadata"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 77.7
          }
        ],
        "editorialScores": {
          "ergonomics": 93,
          "maintenance": 85,
          "payments": 40,
          "reliability": 62,
          "schema": 94,
          "security": 86,
          "transparency": 72
        },
        "provenanceScore": 98
      },
      "connect": {
        "http": "curl https://api.stripe.com/v1/identity/verification_sessions \\\n  -u \"\u003c\u003cYOUR_SECRET_KEY\u003e\u003e:\" \\\n  -d type=document"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/stripe-identity"
      },
      "sameCompany": [
        "stripe-mcp"
      ],
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Stripe, LLC",
        "domain": "stripe.com",
        "domainRegistered": "1995-09-12",
        "endpointOnVendorDomain": true,
        "terms": "https://stripe.com/identity/legal",
        "privacy": "https://stripe.com/privacy",
        "statusPage": "https://status.stripe.com",
        "changelog": "https://docs.stripe.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-14",
        "notes": [
          "stripe.com/identity/legal redirects to the Stripe Services Agreement service terms, last updated 2 October 2026, which hold the Stripe Identity Terms.",
          "Our network was redirected to the /gb/ copies of the terms, privacy policy and service provider list.",
          "stripe.com/.well-known/security.txt points to HackerOne and expires 2026-12-31.",
          "stripe.com was registered in 1995, before Stripe bought it."
        ],
        "score": 98
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/stripe-identity.json",
      "live": {
        "slug": "stripe-identity",
        "vendorStatus": {
          "page": "https://status.stripe.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-14T08:53:58.613651718Z"
        },
        "updatedAt": "2026-10-14T08:53:58.613651718Z"
      }
    },
    "answer": "Stripe Identity scores 77.7 (BB) on agent readiness against Sumsub's 68.5 (B), and leads in 6 of 7 scored categories. Sumsub leads on reliability.",
    "b": {
      "slug": "sumsub",
      "name": "Sumsub",
      "vendor": "Sum and Substance Ltd",
      "vendorUrl": "https://sumsub.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Sumsub verifies people from identity documents and a liveness check, verifies businesses against registries, and screens both against sanctions and watchlists. Agents reach it through a signed REST API and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/sumsub",
      "markdownUrl": "https://www.anchorterminal.com/tools/sumsub.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sumsub.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sumsub.json",
      "repo": "https://github.com/sumsub/agent-skills",
      "license": "Proprietary service under Sumsub's terms and conditions. The agent skills repository and the @sumsub/websdk npm package are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.sumsub.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@sumsub/websdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "The REST API takes an app token generated in the Dashboard by a signed-in team member. Each request carries `X-App-Token`, `X-App-Access-Ts` and `X-App-Access-Sig`, an HMAC-SHA256 signature made with the token's secret key over the timestamp, method, path and body. A token has its own permissions, an optional IP allowlist, an optional expiry date and optional source keys that limit it to a group of applicants, and it can be disabled or deleted but not edited. Sandbox and production tokens are separate. The MCP server at https://api.sumsub.com/mcp/ uses OAuth with PKCE and dynamic client registration, signs the user in with Sumsub, and needs the Use MCP server role permission. Production mode opens after Sumsub verifies the integration (https://docs.sumsub.com/reference/about-sumsub-api).",
      "pricing": "usage",
      "pricingNotes": "Basic is $1.35 per verification with a $149 monthly minimum, and Compliance is $1.85 with a $299 minimum and adds AML screening and address checks. Business verification, transaction monitoring and fraud prevention are on a custom plan through sales. Only completed checks are charged. Sandbox mode is free in any account, limited to 500 new applicants and 1,000 transactions per 24 hours. The 14-day trial of 50 real checks asks for bank card details (https://sumsub.com/pricing/, https://docs.sumsub.com/docs/self-service, checked 2026-10-08).",
      "priceSummary": "$1.35 / tx",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 172226,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.sumsub.com",
      "llmsTxt": "https://docs.sumsub.com/llms.txt",
      "openapi": "https://api.sumsub.com/openapi.json",
      "capabilities": [
        "kyc.identity",
        "kyc.business",
        "kyc.documents",
        "kyc.screening",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "usage-based",
        "sandbox",
        "api-key",
        "oauth",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "status-page",
        "sla",
        "bug-bounty",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-10-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.5,
        "grade": "B",
        "agentReady": false,
        "rank": 220,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 74,
          "payments": 25,
          "reliability": 80,
          "schema": 78,
          "security": 80,
          "transparency": 74
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Per-token permissions, an IP allowlist, HMAC-signed requests and a public OpenAPI spec with Markdown docs suit an agent working on verification cases. No idempotency keys or Retry-After guidance were found, there is no server SDK, and production access needs a browser signup, a bank card and Sumsub's review of the integration.",
        "bestFor": "An agent that starts verifications, sends links, reads results and AML cases, and works case queues for a regulated business, with one token limited to those permissions.",
        "strengths": [
          "App tokens carry per-token permissions, an optional IP allowlist and expiry date, and can be disabled with a recorded reason",
          "Requests are signed with HMAC-SHA256 over timestamp, method, path and body, so the secret key never travels",
          "Public OpenAPI 3.0.1 spec with 157 operations, llms.txt, and every docs page served as Markdown",
          "Hosted MCP server with OAuth, PKCE and dynamic client registration, gated by a Use MCP server role permission",
          "Terms publish a 99.5 per cent monthly uptime commitment, and the status page lists API, WebSDK and MobileSDK for three regions"
        ],
        "weaknesses": [
          "No idempotency keys and no Retry-After or backoff guidance found in the reviewed documentation",
          "Only 24 of 157 operations in the OpenAPI spec carry a summary or description, and 154 declare only a default response",
          "No official server-side SDK. Sumsub publishes request-signing examples in seven languages instead",
          "The 14-day trial of 50 real checks needs a bank card, and production opens after Sumsub checks the integration",
          "Terms clause 6.9 permits Sumsub to use customers' personal data to develop fraud detection, including machine learning models",
          "The subprocessor list is published in the Dashboard, not on a public page"
        ],
        "agentNotes": [
          "Sign every request. X-App-Access-Sig is the lowercase hex HMAC-SHA256 of timestamp, uppercase method, path with query and raw body, and the timestamp must be within one minute of server time",
          "Use a sandbox token (prefix sbx) for agent work. Sandbox and production tokens are separate, and Sumsub's own skills refuse any other prefix",
          "Stay under 300 GET and 50 POST requests per 5 seconds, and under 500 new applicants per 24 hours in Sandbox",
          "Token permissions can't be edited after creation. Generate a new token with the narrower set and delete the old one",
          "Subscribe to the applicantReviewed webhook for results and verify x-payload-digest against the raw body before trusting 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": 68.5
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 74,
          "payments": 25,
          "reliability": 80,
          "schema": 78,
          "security": 80,
          "transparency": 52
        },
        "provenanceScore": 96
      },
      "connect": {
        "install": "npx skills add sumsub/agent-skills --all -g",
        "http": "curl -X GET \\\n  'https://api.sumsub.com/resources/auditTrailEvents/list?from=2024-06-01+00:00:00\u0026to=2024-06-30+23:59:59\u0026limit=100' \\\n  -H 'X-App-Token: \u003cyour-app-token\u003e' \\\n  -H 'X-App-Access-Sig: \u003cyour-signature\u003e' \\\n  -H 'X-App-Access-Ts: \u003cunix-timestamp\u003e'",
        "claudeCode": "claude mcp add --transport http sumsub https://api.sumsub.com/mcp/",
        "config": {
          "mcpServers": {
            "sumsub": {
              "args": [
                "mcp-remote",
                "https://api.sumsub.com/mcp/"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/sumsub"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Basic plan, user verification",
          "unit": "tx",
          "usd": 1.35,
          "note": "per completed verification; $149 monthly minimum"
        },
        {
          "item": "Compliance plan, user verification with AML screening and address check",
          "unit": "tx",
          "usd": 1.85,
          "note": "per completed verification; $299 monthly minimum"
        }
      ],
      "provenance": {
        "legalEntity": "Sum and Substance Ltd",
        "domain": "sumsub.com",
        "domainRegistered": "2015-05-01",
        "endpointOnVendorDomain": true,
        "terms": "https://sumsub.com/terms-and-conditions/",
        "privacy": "https://sumsub.com/privacy-notice-service/",
        "statusPage": "https://status.sumsub.com",
        "changelog": "https://docs.sumsub.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The terms (version of 21 May 2026) name Sum and Substance Ltd, England, company number 09688671, 30 St. Mary Axe, London EC3A 8BF, with contracting entities in the UAE, Delaware, Singapore and Cyprus depending on where the customer is registered.",
          "The API and the MCP server answer at api.sumsub.com, and the Dashboard and OAuth issuer at cockpit.sumsub.com.",
          "sumsub.com/.well-known/security.txt gives security@sumsub.com and a Bugcrowd engagement as contacts and expires on 2027-12-31.",
          "The service privacy notice was last updated on 19 March 2026. The data processing agreement is Annex 3 of the terms.",
          "RDAP for sumsub.com gives a registration date of 2015-05-01."
        ],
        "score": 96
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sumsub.json",
      "live": {
        "slug": "sumsub",
        "probe": {
          "target": "https://api.sumsub.com",
          "method": "get",
          "lastAt": "2026-10-14T10:00:06.789271092Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 384,
          "authRequired": false,
          "uptime24h": 99.6,
          "uptime30d": 99.93,
          "p50ms24h": 170,
          "p95ms24h": 267,
          "samples24h": 248,
          "samples30d": 1435,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 103,
              "ok": 102
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.sumsub.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:53:37.468496644Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@sumsub/websdk",
            "version": "2.9.0",
            "seenAt": "2026-10-13T23:27:09.462566319Z"
          }
        ],
        "githubStars": 7,
        "npmWeekly": 138750,
        "securityTxt": {
          "url": "https://sumsub.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-12-31T11:59:00Z",
          "checkedAt": "2026-10-13T15:45:21.352569844Z"
        },
        "llmsTxt": {
          "url": "https://docs.sumsub.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:12:38.573023295Z"
        },
        "domain": {
          "domain": "sumsub.com",
          "registered": "2015-05-01",
          "source": "https://rdap.verisign.com/com/v1/domain/sumsub.com",
          "checkedAt": "2026-10-11T13:20:19.731095648Z"
        },
        "pages": [
          {
            "url": "https://docs.sumsub.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-13T20:15:57.742117391Z",
            "changedAt": "2026-10-13T20:15:57.742117391Z",
            "fingerprint": "f2fb6b024be3"
          },
          {
            "url": "https://sumsub.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-13T20:23:56.866580279Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8df9176ba407"
          },
          {
            "url": "https://sumsub.com/privacy-notice-service/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-13T20:23:58.967858161Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "676c31f026df"
          },
          {
            "url": "https://sumsub.com/terms-and-conditions/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-13T20:24:01.002993329Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "63e133a2d160"
          }
        ],
        "updatedAt": "2026-10-14T10:00:06.789271092Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Stripe, LLC",
        "b": "Sum and Substance Ltd",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.sumsub.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Stripe Services Agreement and Stripe Identity Terms. The OpenAPI spec and official SDKs are MIT",
        "b": "Proprietary service under Sumsub's terms and conditions. The agent skills repository and the @sumsub/websdk npm package are MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-01",
        "b": "2026-10-03",
        "name": "Last release"
      },
      {
        "a": "2026-09-28",
        "b": "2026-05-21",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-28",
        "b": "2026-03-19",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "24.2M npm/wk, 11.4M PyPI/wk",
        "b": "172k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Stripe Identity scores 77.7 (BB) on agent readiness against Sumsub's 68.5 (B), and leads in 6 of 7 scored categories. Sumsub leads on reliability.",
        "question": "Which is better for AI agents, Stripe Identity or Sumsub?"
      },
      {
        "answer": "Stripe Identity needs an API key. Sumsub takes an API key or an OAuth sign-in.",
        "question": "Do Stripe Identity and Sumsub need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Stripe Identity. Sumsub has a hosted endpoint at https://api.sumsub.com.",
        "question": "Can an agent call Stripe Identity and Sumsub without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 94 against 78",
          "Agent ergonomics, 93 against 60",
          "Security \u0026 auth, 86 against 80",
          "Payments \u0026 pricing, 40 against 25",
          "Maintenance \u0026 community, 85 against 74",
          "Transparency \u0026 trust, 85 against 74"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "A business already on Stripe that needs document and selfie checks or US SSN validation with published prices.",
        "slug": "stripe-identity",
        "watchFor": "Document, selfie and US SSN checks only. No sanctions or watchlist screening and no business verification"
      },
      {
        "aheadOn": [
          "Reliability, 80 against 62"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "An agent that starts verifications, sends links, reads results and AML cases, and works case queues for a regulated business, with one token limited to those permissions.",
        "slug": "sumsub",
        "watchFor": "No idempotency keys and no Retry-After or backoff guidance found in the reviewed documentation"
      }
    ],
    "job": {
      "capability": "kyc.identity",
      "name": "Identity verification"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-stripe-identity.json",
        "title": "Alloy vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alloy-vs-sumsub.json",
        "title": "Alloy vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-stripe-identity.json",
        "title": "ComplyCube vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-sumsub.json",
        "title": "ComplyCube vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-stripe-identity.json",
        "title": "Didit vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/didit-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-sumsub.json",
        "title": "Didit vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/didit-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-stripe-identity.json",
        "title": "Jumio vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-sumsub.json",
        "title": "Jumio vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-stripe-identity.json",
        "title": "Middesk vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-stripe-identity.json",
        "title": "Persona vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/persona-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-sumsub.json",
        "title": "Persona vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/persona-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-identity-verification-vs-stripe-identity.json",
        "title": "Plaid Identity Verification vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/plaid-identity-verification-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-identity-verification-vs-sumsub.json",
        "title": "Plaid Identity Verification vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/plaid-identity-verification-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shufti-vs-stripe-identity.json",
        "title": "Shufti vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/shufti-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shufti-vs-sumsub.json",
        "title": "Shufti vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/shufti-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socure-riskos-vs-stripe-identity.json",
        "title": "Socure RiskOS vs Stripe Identity",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-stripe-identity"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub.json",
        "title": "Socure RiskOS vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-trulioo.json",
        "title": "Stripe Identity vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/stripe-identity-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.json",
        "title": "Stripe Identity vs Veriff",
        "url": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-vouched.json",
        "title": "Stripe Identity vs Vouched",
        "url": "https://www.anchorterminal.com/compare/stripe-identity-vs-vouched"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sumsub-vs-trulioo.json",
        "title": "Sumsub vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/sumsub-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sumsub-vs-veriff.json",
        "title": "Sumsub vs Veriff",
        "url": "https://www.anchorterminal.com/compare/sumsub-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sumsub-vs-vouched.json",
        "title": "Sumsub vs Vouched",
        "url": "https://www.anchorterminal.com/compare/sumsub-vs-vouched"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-sumsub.json",
        "title": "ComplyAdvantage vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-sumsub.json",
        "title": "Middesk vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-sumsub"
      }
    ],
    "scores": [
      {
        "by": 18,
        "edge": "sumsub",
        "key": "reliability",
        "name": "Reliability",
        "stripe-identity": 62,
        "sumsub": 80,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 16,
        "edge": "stripe-identity",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "stripe-identity": 94,
        "sumsub": 78,
        "weight": 13
      },
      {
        "by": 33,
        "edge": "stripe-identity",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "stripe-identity": 93,
        "sumsub": 60,
        "weight": 13
      },
      {
        "by": 6,
        "edge": "stripe-identity",
        "key": "security",
        "name": "Security \u0026 auth",
        "stripe-identity": 86,
        "sumsub": 80,
        "weight": 14
      },
      {
        "by": 15,
        "edge": "stripe-identity",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "stripe-identity": 40,
        "sumsub": 25,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "stripe-identity",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "stripe-identity": 85,
        "sumsub": 74,
        "weight": 7
      },
      {
        "by": 11,
        "edge": "stripe-identity",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "stripe-identity": 85,
        "sumsub": 74,
        "weight": 7
      }
    ],
    "summary": "Stripe Identity scores 77.7 (BB) on agent readiness against Sumsub's 68.5 (B), and leads in 6 of 7 scored categories. Sumsub leads on reliability. Both do identity verification.",
    "verdicts": {
      "stripe-identity": "Stripe Identity runs on the Stripe API, with a public OpenAPI spec, idempotency keys, restricted keys for sensitive fields and a redact endpoint. The product page lists £1.25 per document and selfie check, and the first 50 are free. It has no watchlist or business screening, and outside GB, JP and the US it is in public beta.",
      "sumsub": "Per-token permissions, an IP allowlist, HMAC-signed requests and a public OpenAPI spec with Markdown docs suit an agent working on verification cases. No idempotency keys or Retry-After guidance were found, there is no server SDK, and production access needs a browser signup, a bank card and Sumsub's review of the integration."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub",
    "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.md",
    "slim": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.min.md"
  },
  "markdown": "Stripe Identity scores 77.7 (BB) on agent readiness against Sumsub's 68.5 (B), and leads in 6 of 7 scored categories. Sumsub leads on reliability. Both do identity verification.\n\n- Stripe Identity: grade BB, 77.7/100, rank #21 of 1076. Markdown https://www.anchorterminal.com/tools/stripe-identity.md · JSON https://www.anchorterminal.com/api/v1/tools/stripe-identity.json\n- Sumsub: grade B, 68.5/100, rank #220 of 1076. Markdown https://www.anchorterminal.com/tools/sumsub.md · JSON https://www.anchorterminal.com/api/v1/tools/sumsub.json\n- Best identity and business verification APIs for AI agents: https://www.anchorterminal.com/best/identity-verification/index.md\n- All 119 verification comparisons: https://www.anchorterminal.com/compare/identity-verification/index.md\n\n## Which one, for what\n\n### Stripe Identity (BB)\n\nGood for: A business already on Stripe that needs document and selfie checks or US SSN validation with published prices.\n\nAhead on:\n- Schema \u0026 documentation, 94 against 78\n- Agent ergonomics, 93 against 60\n- Security \u0026 auth, 86 against 80\n- Payments \u0026 pricing, 40 against 25\n- Maintenance \u0026 community, 85 against 74\n- Transparency \u0026 trust, 85 against 74\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: Document, selfie and US SSN checks only. No sanctions or watchlist screening and no business verification\n\n### Sumsub (B)\n\nGood for: An agent that starts verifications, sends links, reads results and AML cases, and works case queues for a regulated business, with one token limited to those permissions.\n\nAhead on:\n- Reliability, 80 against 62\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No idempotency keys and no Retry-After or backoff guidance found in the reviewed documentation\n\n\n## Score by category\n\n| Category | Weight | Stripe Identity | Sumsub | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 62 | 80 | Sumsub +18 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 94 | 78 | Stripe Identity +16 |\n| Agent ergonomics | 13% (16.2 this run) | 93 | 60 | Stripe Identity +33 |\n| Security \u0026 auth | 14% (17.5 this run) | 86 | 80 | Stripe Identity +6 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 25 | Stripe Identity +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 74 | Stripe Identity +11 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 85 | 74 | Stripe Identity +11 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **77.7 · BB** | **68.5 · B** | |\n\n## Facts side by side\n\n| Fact | Stripe Identity | Sumsub |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Stripe, LLC | Sum and Substance Ltd |\n| Hosted endpoint | no (local only) | `https://api.sumsub.com` |\n| Transports | HTTP | HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service under the Stripe Services Agreement and Stripe Identity Terms. The OpenAPI spec and official SDKs are MIT | Proprietary service under Sumsub's terms and conditions. The agent skills repository and the @sumsub/websdk npm package are MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-01 | 2026-10-03 |\n| Terms last updated | 2026-09-28 | 2026-05-21 |\n| Privacy policy last updated | 2026-04-28 | 2026-03-19 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 24.2M npm/wk, 11.4M PyPI/wk | 172k npm/wk |\n\n## Verdicts\n\n**Stripe Identity.** Stripe Identity runs on the Stripe API, with a public OpenAPI spec, idempotency keys, restricted keys for sensitive fields and a redact endpoint. The product page lists £1.25 per document and selfie check, and the first 50 are free. It has no watchlist or business screening, and outside GB, JP and the US it is in public beta.\n\n**Sumsub.** Per-token permissions, an IP allowlist, HMAC-signed requests and a public OpenAPI spec with Markdown docs suit an agent working on verification cases. No idempotency keys or Retry-After guidance were found, there is no server SDK, and production access needs a browser signup, a bank card and Sumsub's review of the integration.\n\n## Before you call either\n\n### Stripe Identity\n\n1. Send an Idempotency-Key based on your user reference when creating a VerificationSession, so a retry doesn't make a second session\n2. Send the end user the session URL or client secret. The person completes the check, the agent can't. Links expire after 48 hours\n3. Use a restricted key for `verified_outputs.dob` and `id_number`. Without an IP restriction it reads them only for 48 hours\n4. Wait for `identity.verification_session.verified` or `requires_input` webhooks instead of polling\n5. Treat `redact` as irreversible, and don't put personal data in metadata\n\n### Sumsub\n\n1. Sign every request. X-App-Access-Sig is the lowercase hex HMAC-SHA256 of timestamp, uppercase method, path with query and raw body, and the timestamp must be within one minute of server time\n2. Use a sandbox token (prefix sbx) for agent work. Sandbox and production tokens are separate, and Sumsub's own skills refuse any other prefix\n3. Stay under 300 GET and 50 POST requests per 5 seconds, and under 500 new applicants per 24 hours in Sandbox\n4. Token permissions can't be edited after creation. Generate a new token with the narrower set and delete the old one\n5. Subscribe to the applicantReviewed webhook for results and verify x-payload-digest against the raw body before trusting it\n\n## Questions\n\n### Which is better for AI agents, Stripe Identity or Sumsub?\n\nStripe Identity scores 77.7 (BB) on agent readiness against Sumsub's 68.5 (B), and leads in 6 of 7 scored categories. Sumsub leads on reliability.\n\n### Do Stripe Identity and Sumsub need an API key?\n\nStripe Identity needs an API key. Sumsub takes an API key or an OAuth sign-in.\n\n### Can an agent call Stripe Identity and Sumsub without installing anything?\n\nNo hosted endpoint is listed for Stripe Identity. Sumsub has a hosted endpoint at https://api.sumsub.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.json, and with the fewest tokens: https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"stripe-identity\", \"b\": \"sumsub\"}`. From a terminal: `anchor compare stripe-identity sumsub`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/stripe-identity.json and https://www.anchorterminal.com/api/v1/tools/sumsub.json\n\n## Other comparisons with Stripe Identity or Sumsub\n\n- [Alloy vs Stripe Identity](https://www.anchorterminal.com/compare/alloy-vs-stripe-identity.md)\n- [Alloy vs Sumsub](https://www.anchorterminal.com/compare/alloy-vs-sumsub.md)\n- [ComplyCube vs Stripe Identity](https://www.anchorterminal.com/compare/complycube-vs-stripe-identity.md)\n- [ComplyCube vs Sumsub](https://www.anchorterminal.com/compare/complycube-vs-sumsub.md)\n- [Didit vs Stripe Identity](https://www.anchorterminal.com/compare/didit-vs-stripe-identity.md)\n- [Didit vs Sumsub](https://www.anchorterminal.com/compare/didit-vs-sumsub.md)\n- [Entrust Identity Verification (formerly Onfido) vs Stripe Identity](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-stripe-identity.md)\n- [Entrust Identity Verification (formerly Onfido) vs Sumsub](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-sumsub.md)\n- [Jumio vs Stripe Identity](https://www.anchorterminal.com/compare/jumio-vs-stripe-identity.md)\n- [Jumio vs Sumsub](https://www.anchorterminal.com/compare/jumio-vs-sumsub.md)\n- [Middesk vs Stripe Identity](https://www.anchorterminal.com/compare/middesk-vs-stripe-identity.md)\n- [Persona vs Stripe Identity](https://www.anchorterminal.com/compare/persona-vs-stripe-identity.md)\n- [Persona vs Sumsub](https://www.anchorterminal.com/compare/persona-vs-sumsub.md)\n- [Plaid Identity Verification vs Stripe Identity](https://www.anchorterminal.com/compare/plaid-identity-verification-vs-stripe-identity.md)\n- [Plaid Identity Verification vs Sumsub](https://www.anchorterminal.com/compare/plaid-identity-verification-vs-sumsub.md)\n- [Shufti vs Stripe Identity](https://www.anchorterminal.com/compare/shufti-vs-stripe-identity.md)\n- [Shufti vs Sumsub](https://www.anchorterminal.com/compare/shufti-vs-sumsub.md)\n- [Socure RiskOS vs Stripe Identity](https://www.anchorterminal.com/compare/socure-riskos-vs-stripe-identity.md)\n- [Socure RiskOS vs Sumsub](https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub.md)\n- [Stripe Identity vs Trulioo](https://www.anchorterminal.com/compare/stripe-identity-vs-trulioo.md)\n- [Stripe Identity vs Veriff](https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.md)\n- [Stripe Identity vs Vouched](https://www.anchorterminal.com/compare/stripe-identity-vs-vouched.md)\n- [Sumsub vs Trulioo](https://www.anchorterminal.com/compare/sumsub-vs-trulioo.md)\n- [Sumsub vs Veriff](https://www.anchorterminal.com/compare/sumsub-vs-veriff.md)\n- [Sumsub vs Vouched](https://www.anchorterminal.com/compare/sumsub-vs-vouched.md)\n- [ComplyAdvantage vs Sumsub](https://www.anchorterminal.com/compare/complyadvantage-vs-sumsub.md)\n- [Middesk vs Sumsub](https://www.anchorterminal.com/compare/middesk-vs-sumsub.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "Stripe Identity vs Sumsub",
        "url": ""
      }
    ],
    "description": "Stripe Identity scores 77.7 (BB) to Sumsub's 68.5 (B) for identity verification. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Stripe Identity BB 77.7",
      "Sumsub B 68.5",
      "scores"
    ],
    "h1": "Stripe Identity vs Sumsub",
    "image": "https://www.anchorterminal.com/assets/og/compare-stripe-identity-vs-sumsub.png",
    "path": "/compare/stripe-identity-vs-sumsub",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Stripe Identity vs Sumsub for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub"
  },
  "tokens": {
    "markdown": 2600,
    "slim": 680
  },
  "version": 1
}
