{
  "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 Veriff's 61.1 (C), and leads in 5 of 7 scored categories.",
    "b": {
      "slug": "veriff",
      "name": "Veriff",
      "vendor": "Veriff OÜ",
      "vendorUrl": "https://www.veriff.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Identity verification service from Veriff in Tallinn. It checks an identity document and a selfie, with liveness, database checks and PEP and sanctions screening. Sessions are created and read through the Public API v1, with results sent by webhook.",
      "url": "https://www.anchorterminal.com/tools/veriff",
      "markdownUrl": "https://www.anchorterminal.com/tools/veriff.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/veriff.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/veriff.json",
      "repo": "https://github.com/Veriff/veriff-js-sdk",
      "license": "Proprietary service. The npm capture SDKs are ISC (@veriff/js-sdk, @veriff/incontext-sdk) and MIT (@veriff/react-native-sdk)",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@veriff/incontext-sdk"
        },
        {
          "registry": "npm",
          "name": "@veriff/js-sdk"
        },
        {
          "registry": "npm",
          "name": "@veriff/react-native-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve. Signing up for a Self-Serve plan creates a Customer Portal account with a test integration, and Enterprise accounts start from a sales form. Each integration has an API key, sent as `X-AUTH-CLIENT`, and up to five shared secret keys used to compute an HMAC-SHA256 `X-HMAC-SIGNATURE` (over the body on POST and PATCH, over the session ID on GET and DELETE). POST /v1/sessions needs only the API key. Secrets are shown once and can be rotated or deleted by an admin. There are no scopes. A live integration unlocks once the account holder passes Veriff's own identity verification.",
      "pricing": "usage",
      "pricingNotes": "Self-Serve is priced per verification with a monthly minimum. Essential is $0.80 ($49 a month minimum), Plus $1.39 ($99) and Premium $1.89 ($209). PEP and sanctions screening adds $0.64, ongoing monitoring $0.09 and two-year retention $0.30. A 15-day trial covers up to 50 sessions with no card, after the account holder completes identity verification. Test integrations are free and unbilled. Enterprise, suggested for 5,000 or more verifications a month, is priced by sales (https://www.veriff.com/plans/self-serve, checked 2026-10-08).",
      "priceSummary": "$0.80 / tx",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs index, the API guides or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 32,
        "npmWeekly": 109625,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://devdocs.veriff.com",
      "llmsTxt": "https://devdocs.veriff.com/llms.txt",
      "openapi": "https://devdocs.veriff.com/apidocs/v1sessions.md",
      "capabilities": [
        "kyc.identity",
        "kyc.documents",
        "kyc.screening"
      ],
      "tags": [
        "hosted",
        "api-key",
        "hmac",
        "webhooks",
        "openapi",
        "llms-txt",
        "free-trial",
        "sandbox",
        "status-page",
        "bug-bounty",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-10-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.1,
        "grade": "C",
        "agentReady": false,
        "rank": 512,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 43,
          "maintenance": 74,
          "payments": 40,
          "reliability": 62,
          "schema": 82,
          "security": 63,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Per-verification prices are public from $0.80, with a 15-day trial of 50 sessions and no card. Each endpoint page is Markdown with an OpenAPI 3.0 fragment. There is no server SDK, MCP server or idempotency key, most calls need an HMAC signature, and the status page shows nine incidents between 20 July and 7 October 2026.",
        "bestFor": "A team that needs document and selfie verification with public per-verification prices and a trial, and that can run a webhook receiver and HMAC signing.",
        "strengths": [
          "Public prices of $0.80, $1.39 and $1.89 a verification, with a 15-day trial of up to 50 sessions and no card",
          "llms.txt index and Markdown pages, each API endpoint with an OpenAPI 3.0.0 fragment, examples and error schemas",
          "Up to five shared secret keys per integration, shown once, with documented rotation and deletion",
          "Test integrations are created at signup, aren't billed, and let the developer force a decision",
          "ISO/IEC 27001:2022, SOC 2 Type II, Cyber Essentials and a bug bounty on Intigriti paying 50 to 6,000 euros"
        ],
        "weaknesses": [
          "No server-side SDK and no MCP server. Official packages cover only browser and mobile capture",
          "No idempotency key on POST /v1/sessions, and no Retry-After or backoff guidance for the documented 429",
          "Nine status-page incidents between 20 July and 7 October 2026, mostly delayed decisions in the US region",
          "No endpoint lists sessions and no pagination was found. Every read needs a stored session ID",
          "Session deletion by API is off by default and capped at 10 sessions in 24 hours",
          "No security.txt, and the sub-processor list sits on a help centre page that needs JavaScript"
        ],
        "agentNotes": [
          "Take the base URL from the integration's API keys page. Send X-AUTH-CLIENT on every call and store verification.id from POST /v1/sessions",
          "Sign POST and PATCH bodies, and the session ID on GET and DELETE, with HMAC-SHA256 in X-HMAC-SIGNATURE. POST /v1/sessions needs no signature",
          "Stay under 30 session creations a minute on Self-Serve, 600 on Enterprise. A 429 carries code 1004",
          "Don't blindly retry POST /v1/sessions. Each call makes a new session, which is billed on a live integration",
          "Poll GET /v1/sessions/{id}/decision until `verification` is not null, or accept webhooks within 5 seconds and treat duplicates as normal"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.1
          }
        ],
        "editorialScores": {
          "ergonomics": 43,
          "maintenance": 74,
          "payments": 40,
          "reliability": 62,
          "schema": 82,
          "security": 63,
          "transparency": 48
        },
        "provenanceScore": 85
      },
      "connect": {
        "http": "curl -X POST \"https://\u003cBaseURL\u003e/v1/sessions\" \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-AUTH-CLIENT: API-KEY' \\\n  -d '{\"verification\": {}}'"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/veriff"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Verification, Essential plan (automated decision)",
          "unit": "tx",
          "usd": 0.8,
          "note": "$49 a month minimum"
        },
        {
          "item": "Verification, Plus plan",
          "unit": "tx",
          "usd": 1.39,
          "note": "$99 a month minimum"
        },
        {
          "item": "Verification, Premium plan",
          "unit": "tx",
          "usd": 1.89,
          "note": "$209 a month minimum"
        },
        {
          "item": "PEP and sanctions screening add-on, per verification",
          "unit": "tx",
          "usd": 0.64,
          "note": "charged on top of the monthly minimum"
        },
        {
          "item": "Ongoing monitoring add-on, per verification",
          "unit": "tx",
          "usd": 0.09,
          "note": "charged on top of the monthly minimum"
        }
      ],
      "provenance": {
        "legalEntity": "Veriff OÜ",
        "domain": "veriff.com",
        "domainRegistered": "2006-04-12",
        "endpointOnVendorDomain": true,
        "terms": "https://www.veriff.com/terms-of-service",
        "privacy": "https://www.veriff.com/privacy-notice",
        "statusPage": "https://status.veriff.com",
        "changelog": "https://devdocs.veriff.com/docs/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy notice (valid from 30 July 2020, last updated 16 April 2026) names Veriff OÜ and Veriff Brazil Ltda. and gives the Estonian Data Protection Inspectorate as lead supervisory authority.",
          "www.veriff.com/terms-of-service answers 200 with the title Terms of Service but no terms text in the HTML we fetched, so the terms themselves weren't read.",
          "www.veriff.com/.well-known/security.txt and /security.txt return 404. Reports go to a bug bounty programme on Intigriti (https://www.veriff.com/bug-bounty).",
          "The API base URL is per integration and shown in the Customer Portal. Code samples in the docs use https://stationapi.veriff.com.",
          "RDAP for veriff.com gives a registration date of 2006-04-12, which predates the company.",
          "The sub-processor list is linked from the privacy notice to help.veriff.com, which returned only a JavaScript shell to our fetch."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/veriff.json",
      "live": {
        "slug": "veriff",
        "vendorStatus": {
          "page": "https://status.veriff.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:53:44.069758275Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Veriff/veriff-js-sdk",
            "version": "v2.0.0",
            "released": "2025-09-09",
            "seenAt": "2026-10-13T23:31:40.183610703Z"
          },
          {
            "registry": "npm",
            "name": "@veriff/incontext-sdk",
            "version": "2.5.0",
            "seenAt": "2026-10-13T23:31:35.965000783Z"
          },
          {
            "registry": "npm",
            "name": "@veriff/js-sdk",
            "version": "2.0.0",
            "seenAt": "2026-10-13T23:31:36.444840844Z"
          },
          {
            "registry": "npm",
            "name": "@veriff/react-native-sdk",
            "version": "13.2.0",
            "seenAt": "2026-10-13T23:31:38.170298091Z"
          }
        ],
        "githubStars": 32,
        "npmWeekly": 86872,
        "securityTxt": {
          "url": "https://veriff.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-13T15:46:02.397688666Z"
        },
        "llmsTxt": {
          "url": "https://devdocs.veriff.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:12:45.152591047Z"
        },
        "domain": {
          "domain": "veriff.com",
          "registered": "2006-04-12",
          "source": "https://rdap.verisign.com/com/v1/domain/veriff.com",
          "checkedAt": "2026-10-11T13:13:15.609653227Z"
        },
        "pages": [
          {
            "url": "https://devdocs.veriff.com/docs/release-notes",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-13T20:12:26.964558523Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "26520a9df2cc"
          },
          {
            "url": "https://www.veriff.com/privacy-notice",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-13T20:33:20.100316058Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "024c0d3f9713"
          },
          {
            "url": "https://www.veriff.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-13T20:33:22.197443856Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "d9e650601ce7"
          }
        ],
        "updatedAt": "2026-10-14T09:53:44.069758275Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Stripe, LLC",
        "b": "Veriff OÜ",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API 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. The npm capture SDKs are ISC (@veriff/js-sdk, @veriff/incontext-sdk) and MIT (@veriff/react-native-sdk)",
        "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-02",
        "name": "Last release"
      },
      {
        "a": "2026-09-28",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-28",
        "b": "2026-04-16",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "24.2M npm/wk, 11.4M PyPI/wk",
        "b": "32 stars, 110k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Stripe Identity scores 77.7 (BB) on agent readiness against Veriff's 61.1 (C), and leads in 5 of 7 scored categories.",
        "question": "Which is better for AI agents, Stripe Identity or Veriff?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Stripe Identity and Veriff need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Stripe Identity. No hosted endpoint is listed for Veriff.",
        "question": "Can an agent call Stripe Identity and Veriff without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 94 against 82",
          "Agent ergonomics, 93 against 43",
          "Security \u0026 auth, 86 against 63",
          "Maintenance \u0026 community, 85 against 74",
          "Transparency \u0026 trust, 85 against 67"
        ],
        "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": null,
        "also": null,
        "goodFor": "A team that needs document and selfie verification with public per-verification prices and a trial, and that can run a webhook receiver and HMAC signing.",
        "slug": "veriff",
        "watchFor": "No server-side SDK and no MCP server. Official packages cover only browser and mobile capture"
      }
    ],
    "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-veriff.json",
        "title": "Alloy vs Veriff",
        "url": "https://www.anchorterminal.com/compare/alloy-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "ComplyCube vs Veriff",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Didit vs Veriff",
        "url": "https://www.anchorterminal.com/compare/didit-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Entrust Identity Verification (formerly Onfido) vs Veriff",
        "url": "https://www.anchorterminal.com/compare/entrust-identity-verification-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Jumio vs Veriff",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-veriff"
      },
      {
        "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/middesk-vs-veriff.json",
        "title": "Middesk vs Veriff",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Persona vs Veriff",
        "url": "https://www.anchorterminal.com/compare/persona-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Plaid Identity Verification vs Veriff",
        "url": "https://www.anchorterminal.com/compare/plaid-identity-verification-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Shufti vs Veriff",
        "url": "https://www.anchorterminal.com/compare/shufti-vs-veriff"
      },
      {
        "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-veriff.json",
        "title": "Socure RiskOS vs Veriff",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.json",
        "title": "Stripe Identity vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/stripe-identity-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-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-veriff.json",
        "title": "Sumsub vs Veriff",
        "url": "https://www.anchorterminal.com/compare/sumsub-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/trulioo-vs-veriff.json",
        "title": "Trulioo vs Veriff",
        "url": "https://www.anchorterminal.com/compare/trulioo-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/veriff-vs-vouched.json",
        "title": "Veriff vs Vouched",
        "url": "https://www.anchorterminal.com/compare/veriff-vs-vouched"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-veriff.json",
        "title": "ComplyAdvantage vs Veriff",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-veriff"
      }
    ],
    "scores": [
      {
        "by": 0,
        "edge": "",
        "key": "reliability",
        "name": "Reliability",
        "stripe-identity": 62,
        "veriff": 62,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "edge": "stripe-identity",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "stripe-identity": 94,
        "veriff": 82,
        "weight": 13
      },
      {
        "by": 50,
        "edge": "stripe-identity",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "stripe-identity": 93,
        "veriff": 43,
        "weight": 13
      },
      {
        "by": 23,
        "edge": "stripe-identity",
        "key": "security",
        "name": "Security \u0026 auth",
        "stripe-identity": 86,
        "veriff": 63,
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "stripe-identity": 40,
        "veriff": 40,
        "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,
        "veriff": 74,
        "weight": 7
      },
      {
        "by": 18,
        "edge": "stripe-identity",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "stripe-identity": 85,
        "veriff": 67,
        "weight": 7
      }
    ],
    "summary": "Stripe Identity scores 77.7 (BB) on agent readiness against Veriff's 61.1 (C), and leads in 5 of 7 scored categories. 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.",
      "veriff": "Per-verification prices are public from $0.80, with a 15-day trial of 50 sessions and no card. Each endpoint page is Markdown with an OpenAPI 3.0 fragment. There is no server SDK, MCP server or idempotency key, most calls need an HMAC signature, and the status page shows nine incidents between 20 July and 7 October 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff",
    "json": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.md",
    "slim": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.min.md"
  },
  "markdown": "Stripe Identity scores 77.7 (BB) on agent readiness against Veriff's 61.1 (C), and leads in 5 of 7 scored categories. 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- Veriff: grade C, 61.1/100, rank #512 of 1076. Markdown https://www.anchorterminal.com/tools/veriff.md · JSON https://www.anchorterminal.com/api/v1/tools/veriff.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 82\n- Agent ergonomics, 93 against 43\n- Security \u0026 auth, 86 against 63\n- Maintenance \u0026 community, 85 against 74\n- Transparency \u0026 trust, 85 against 67\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### Veriff (C)\n\nGood for: A team that needs document and selfie verification with public per-verification prices and a trial, and that can run a webhook receiver and HMAC signing.\n\nWatch for: No server-side SDK and no MCP server. Official packages cover only browser and mobile capture\n\n\n## Score by category\n\n| Category | Weight | Stripe Identity | Veriff | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 62 | 62 | even |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 94 | 82 | Stripe Identity +12 |\n| Agent ergonomics | 13% (16.2 this run) | 93 | 43 | Stripe Identity +50 |\n| Security \u0026 auth | 14% (17.5 this run) | 86 | 63 | Stripe Identity +23 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 40 | even |\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 | 67 | Stripe Identity +18 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **77.7 · BB** | **61.1 · C** | |\n\n## Facts side by side\n\n| Fact | Stripe Identity | Veriff |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Stripe, LLC | Veriff OÜ |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | API key | API 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. The npm capture SDKs are ISC (@veriff/js-sdk, @veriff/incontext-sdk) and MIT (@veriff/react-native-sdk) |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-01 | 2026-10-02 |\n| Terms last updated | 2026-09-28 | couldn't be read |\n| Privacy policy last updated | 2026-04-28 | 2026-04-16 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | couldn't be read |\n| Terms restrict benchmarking | not found in the text | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Popularity | 24.2M npm/wk, 11.4M PyPI/wk | 32 stars, 110k 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**Veriff.** Per-verification prices are public from $0.80, with a 15-day trial of 50 sessions and no card. Each endpoint page is Markdown with an OpenAPI 3.0 fragment. There is no server SDK, MCP server or idempotency key, most calls need an HMAC signature, and the status page shows nine incidents between 20 July and 7 October 2026.\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### Veriff\n\n1. Take the base URL from the integration's API keys page. Send X-AUTH-CLIENT on every call and store verification.id from POST /v1/sessions\n2. Sign POST and PATCH bodies, and the session ID on GET and DELETE, with HMAC-SHA256 in X-HMAC-SIGNATURE. POST /v1/sessions needs no signature\n3. Stay under 30 session creations a minute on Self-Serve, 600 on Enterprise. A 429 carries code 1004\n4. Don't blindly retry POST /v1/sessions. Each call makes a new session, which is billed on a live integration\n5. Poll GET /v1/sessions/{id}/decision until `verification` is not null, or accept webhooks within 5 seconds and treat duplicates as normal\n\n## Questions\n\n### Which is better for AI agents, Stripe Identity or Veriff?\n\nStripe Identity scores 77.7 (BB) on agent readiness against Veriff's 61.1 (C), and leads in 5 of 7 scored categories.\n\n### Do Stripe Identity and Veriff need an API key?\n\nBoth need an API key.\n\n### Can an agent call Stripe Identity and Veriff without installing anything?\n\nNo hosted endpoint is listed for Stripe Identity. No hosted endpoint is listed for Veriff.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.json, and with the fewest tokens: https://www.anchorterminal.com/compare/stripe-identity-vs-veriff.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"stripe-identity\", \"b\": \"veriff\"}`. From a terminal: `anchor compare stripe-identity veriff`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/stripe-identity.json and https://www.anchorterminal.com/api/v1/tools/veriff.json\n\n## Other comparisons with Stripe Identity or Veriff\n\n- [Alloy vs Stripe Identity](https://www.anchorterminal.com/compare/alloy-vs-stripe-identity.md)\n- [Alloy vs Veriff](https://www.anchorterminal.com/compare/alloy-vs-veriff.md)\n- [ComplyCube vs Stripe Identity](https://www.anchorterminal.com/compare/complycube-vs-stripe-identity.md)\n- [ComplyCube vs Veriff](https://www.anchorterminal.com/compare/complycube-vs-veriff.md)\n- [Didit vs Stripe Identity](https://www.anchorterminal.com/compare/didit-vs-stripe-identity.md)\n- [Didit vs Veriff](https://www.anchorterminal.com/compare/didit-vs-veriff.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 Veriff](https://www.anchorterminal.com/compare/entrust-identity-verification-vs-veriff.md)\n- [Jumio vs Stripe Identity](https://www.anchorterminal.com/compare/jumio-vs-stripe-identity.md)\n- [Jumio vs Veriff](https://www.anchorterminal.com/compare/jumio-vs-veriff.md)\n- [Middesk vs Stripe Identity](https://www.anchorterminal.com/compare/middesk-vs-stripe-identity.md)\n- [Middesk vs Veriff](https://www.anchorterminal.com/compare/middesk-vs-veriff.md)\n- [Persona vs Stripe Identity](https://www.anchorterminal.com/compare/persona-vs-stripe-identity.md)\n- [Persona vs Veriff](https://www.anchorterminal.com/compare/persona-vs-veriff.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 Veriff](https://www.anchorterminal.com/compare/plaid-identity-verification-vs-veriff.md)\n- [Shufti vs Stripe Identity](https://www.anchorterminal.com/compare/shufti-vs-stripe-identity.md)\n- [Shufti vs Veriff](https://www.anchorterminal.com/compare/shufti-vs-veriff.md)\n- [Socure RiskOS vs Stripe Identity](https://www.anchorterminal.com/compare/socure-riskos-vs-stripe-identity.md)\n- [Socure RiskOS vs Veriff](https://www.anchorterminal.com/compare/socure-riskos-vs-veriff.md)\n- [Stripe Identity vs Sumsub](https://www.anchorterminal.com/compare/stripe-identity-vs-sumsub.md)\n- [Stripe Identity vs Trulioo](https://www.anchorterminal.com/compare/stripe-identity-vs-trulioo.md)\n- [Stripe Identity vs Vouched](https://www.anchorterminal.com/compare/stripe-identity-vs-vouched.md)\n- [Sumsub vs Veriff](https://www.anchorterminal.com/compare/sumsub-vs-veriff.md)\n- [Trulioo vs Veriff](https://www.anchorterminal.com/compare/trulioo-vs-veriff.md)\n- [Veriff vs Vouched](https://www.anchorterminal.com/compare/veriff-vs-vouched.md)\n- [ComplyAdvantage vs Veriff](https://www.anchorterminal.com/compare/complyadvantage-vs-veriff.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 Veriff",
        "url": ""
      }
    ],
    "description": "Stripe Identity scores 77.7 (BB) to Veriff's 61.1 (C) for identity verification. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Stripe Identity BB 77.7",
      "Veriff C 61.1",
      "scores"
    ],
    "h1": "Stripe Identity vs Veriff",
    "image": "https://www.anchorterminal.com/assets/og/compare-stripe-identity-vs-veriff.png",
    "path": "/compare/stripe-identity-vs-veriff",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Stripe Identity vs Veriff for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/stripe-identity-vs-veriff"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 680
  },
  "version": 1
}
