{
  "data": {
    "a": {
      "slug": "check-payroll",
      "name": "Check",
      "vendor": "Check Technologies, Inc.",
      "vendorUrl": "https://www.checkhq.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Check is an embedded payroll API from Check Technologies in New York. Software platforms build US payroll on it for their own customers, with tax calculation, payment and filing handled by Check. Access is by partner agreement.",
      "url": "https://www.anchorterminal.com/tools/check-payroll",
      "markdownUrl": "https://www.anchorterminal.com/tools/check-payroll.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/check-payroll.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/check-payroll.json",
      "repo": "https://github.com/check-technologies/mcp-server-check",
      "license": "Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.checkhq.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "A partner API key sent as `Authorization: Bearer`, one for sandbox and one for production, issued by Check after a request through its sales contact. The key carries the whole partner account, with no per-key scopes found. Check says unused keys expire, last activity is shown and IP restrictions can be set through the account team. Integration partners get OAuth tokens (authorisation code grant, with refresh tokens) limited to one employer and one permission level, after a Check partner authorises them. The hosted MCP server accepts the API key or a Console OAuth login that runs with the Console user's permissions. This listing grades embedded-payroll partner access. Check has no route to an existing employer's payroll account outside a partner platform.",
      "pricing": "paid",
      "pricingNotes": "No public prices. checkhq.com/pricing returns 404 and the site's buttons open a sales contact form. A sandbox exists at sandbox.checkhq.com under a Sandbox User Agreement, but the documentation says to request an API key from Check, so an agent can't start without a person contacting sales. Production needs a partner agreement. The Usage API reports billable companies, employees and contractors each month, with no unit price published (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation index, the API reference pages read or the website (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 18,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.checkhq.com",
      "llmsTxt": "https://docs.checkhq.com/llms.txt",
      "capabilities": [
        "payroll.run",
        "payroll.employees",
        "payroll.embedded",
        "payroll.tax-filing",
        "payroll.contractors"
      ],
      "tags": [
        "hosted",
        "embedded-payroll",
        "us-payroll",
        "api-key",
        "oauth",
        "mcp",
        "llms-txt",
        "sandbox",
        "webhooks",
        "sales-led",
        "partner-approval",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.5,
        "grade": "B",
        "agentReady": false,
        "rank": 208,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 72,
          "payments": 5,
          "reliability": 80,
          "schema": 78,
          "security": 74,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.",
        "bestFor": "A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.",
        "strengths": [
          "`X-Idempotency-Key` is accepted on writes and stored for 24 hours, and a 429 carries `Retry-After` with `RateLimit-Limit` and `RateLimit-Remaining` on every authenticated response",
          "A payroll must have a succeeded preview before approval, and `preview_started_at` makes approval fail with 409 `preview_superseded` if the preview is stale",
          "Every response carries `X-Request-Log-Id`, and GET /logs returns request logs with SSNs, bank account numbers and the `Authorization` header redacted",
          "The MCP server starts with three meta-tools over 270 tools, with read-only mode, toolset filters and optional confirmation for destructive tools",
          "llms.txt indexes the documentation, and each page is served as Markdown with an OpenAPI 3.1 fragment per operation"
        ],
        "weaknesses": [
          "No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact",
          "An API key carries the whole partner account. No per-key scopes or read-only keys were found in the reviewed documentation",
          "No official SDK in a general programming language was found. The CLI and MCP server install from a git clone, not from PyPI",
          "No SLA is published. The terms of service make no representation about uptime unless agreed in writing",
          "No sub-processor list, hosting location or published DPA text was found, and the privacy policy states no retention periods"
        ],
        "agentNotes": [
          "Use https://sandbox.checkhq.com with the sandbox key and https://api.checkhq.com with the production key. A key is not valid across environments",
          "Preview a payroll before approving it, then pass `preview_started_at` to POST /payrolls/{id}/approve so a stale preview fails with 409",
          "Send `X-Idempotency-Key` on every write. Keys expire after 24 hours, so list the resource before retrying later than that",
          "On 429 wait for `Retry-After`. The limit is 10 requests a second in sandbox and for partners paying fewer than 1,000 payees a month, with 100 concurrent requests",
          "Connect the MCP server with `?read_only=true` or `X-MCP-Readonly: true` unless writes are intended. In production, approving a payroll moves money"
        ],
        "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": 67.5
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 72,
          "payments": 5,
          "reliability": 80,
          "schema": 78,
          "security": 74,
          "transparency": 38
        },
        "provenanceScore": 86
      },
      "connect": {
        "http": "curl -X POST https://sandbox.checkhq.com/companies \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Bearer \u003cAPI_KEY\u003e' \\\n  -d '{\"address\": {\"line1\": \"20 W 34th St\", \"postal_code\": \"10001\", \"city\": \"New York\", \"state\": \"NY\"}, \"start_date\": \"2020-05-20\", \"trade_name\": \"Good Web Design\", \"legal_name\": \"Good Web Design, Inc.\"}'",
        "claudeCode": "claude mcp add --transport http check https://mcp.sandbox.checkhq.com/check/mcp \\\n  --header \"Authorization: Bearer your-api-key-here\"",
        "config": {
          "mcpServers": {
            "check": {
              "type": "url",
              "url": "https://mcp.sandbox.checkhq.com/check/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/payroll.run",
        "tool": "https://letme.dev/check-payroll"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Check Technologies, Inc.",
        "domain": "checkhq.com",
        "domainRegistered": "2006-10-28",
        "endpointOnVendorDomain": true,
        "terms": "https://www.checkhq.com/company/terms",
        "privacy": "https://www.checkhq.com/company/privacy",
        "statusPage": "https://status.checkhq.com",
        "changelog": "https://www.checkhq.com/resources/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy policy (effective 18 April 2024) names Check Technologies, Inc., 228 Park Ave. S, PMB 14961, New York, NY 10003. The site footer also names Check Payments LLC (NMLS #2103307).",
          "The terms of service are dated 3 September 2021. Sandbox use is also governed by a Sandbox User Agreement at checkhq.com/company/sandbox-user-agreement.",
          "www.checkhq.com/.well-known/security.txt and checkhq.com/.well-known/security.txt return 404. The security page sends vulnerability reports to a bug bounty at federacy.com/check.",
          "The API answers at api.checkhq.com and sandbox.checkhq.com, and the hosted MCP server at mcp.checkhq.com and mcp.sandbox.checkhq.com.",
          "RDAP for checkhq.com gives a registration date of 2006-10-28 and Squarespace Domains II LLC as registrar."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/check-payroll.json",
      "live": {
        "slug": "check-payroll",
        "probe": {
          "target": "https://api.checkhq.com",
          "method": "get",
          "lastAt": "2026-10-09T00:10:24.561103111Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 1806,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 678,
          "p95ms24h": 1040,
          "samples24h": 95,
          "samples30d": 95,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 2,
              "ok": 2
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.checkhq.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T00:12:16.050592523Z"
        },
        "githubStars": 18,
        "securityTxt": {
          "url": "https://checkhq.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:31.878118114Z"
        },
        "pages": [
          {
            "url": "https://www.checkhq.com/resources/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:27:02.804039275Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ada7be68b809"
          },
          {
            "url": "https://www.checkhq.com/company/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:26:58.734249468Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2d782586e2af"
          },
          {
            "url": "https://www.checkhq.com/company/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:27:00.809006213Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c2d2a944fcea"
          }
        ],
        "updatedAt": "2026-10-09T00:12:16.050592523Z"
      }
    },
    "answer": "Finch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth.",
    "b": {
      "slug": "finch",
      "name": "Finch",
      "vendor": "Profound Platform Inc. (dba Finch)",
      "vendorUrl": "https://www.tryfinch.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Finch is a unified API for reading an employer's existing HR and payroll system, run by Profound Platform Inc. in San Francisco. Applications read directory, employment and pay data from 250+ systems and write payroll deductions.",
      "url": "https://www.anchorterminal.com/tools/finch",
      "markdownUrl": "https://www.anchorterminal.com/tools/finch.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/finch.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/finch.json",
      "repo": "https://github.com/Finch-API/finch-api-node",
      "license": "Proprietary service under Finch's Master Service Agreement. The SDKs and the MCP server on GitHub are Apache-2.0",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.tryfinch.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@tryfinch/finch-api"
        },
        {
          "registry": "npm",
          "name": "@tryfinch/finch-api-mcp"
        },
        {
          "registry": "pypi",
          "name": "finch-api"
        }
      ],
      "auth": "oauth",
      "authNotes": "A person signs up for the Developer Dashboard and receives a `client_id` and `client_secret` for a free sandbox application. Access to an employer's data then needs that employer's administrator to sign in through Finch Connect and approve the requested products. The authorisation code is exchanged at POST /auth/token for a bearer access token tied to that one connection and those products. The token does not expire and is revoked with POST /disconnect. Connect sessions are created with HTTP Basic auth using the client ID and secret. The SSN permission needs Finch's approval, and Gusto and TriNet need a one-time security review before going live. The MCP server reads the access token from `FINCH_ACCESS_TOKEN`.",
      "pricing": "paid",
      "pricingNotes": "Starter is $65 a month per connection, month to month, for 24 providers, up to 15 connections and read-only organisation and payroll data. Pro and Premier are sold through sales, with volume discounts from 25 connections a month, all 250+ providers, deduction writes and assisted integrations. A sandbox with mock data is free with a Dashboard signup, so an agent's owner can start without a contract, and Provider Sandboxes allow five connections to provider demo accounts. All production connections are billable (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation index, the OpenAPI specification or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 2,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 16128,
        "pypiWeekly": 25524,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.tryfinch.com",
      "llmsTxt": "https://developer.tryfinch.com/llms.txt",
      "openapi": "https://developer.tryfinch.com/openapi.json",
      "capabilities": [
        "payroll.employees",
        "payroll.contractors",
        "hr.employees",
        "hr.org",
        "hr.documents"
      ],
      "tags": [
        "hosted",
        "unified-api",
        "payroll-data",
        "hris",
        "oauth",
        "openapi",
        "llms-txt",
        "mcp",
        "sandbox",
        "webhooks",
        "python",
        "typescript",
        "java",
        "go",
        "ruby",
        "status-page",
        "sla",
        "soc2"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71.6,
        "grade": "BB",
        "agentReady": true,
        "rank": 104,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 84,
          "payments": 30,
          "reliability": 84,
          "schema": 87,
          "security": 66,
          "transparency": 74
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Graded on the REST API. An employer grants each connection named product permissions, and limits, error codes and a 99.9 per cent uptime SLA are published. Finch reads payroll and writes deductions but cannot run a payroll. Access tokens never expire, no idempotency keys were found, and writes and most providers need a sales-led plan.",
        "bestFor": "An application that needs to read employees, pay runs and pay statements from whatever payroll or HR system an employer already uses, or to write benefit deductions back.",
        "strengths": [
          "One OpenAPI 3.1 file covers 55 operations, and llms.txt indexes the documentation with every page served as Markdown",
          "Each access token is tied to one employer connection and limited to the products that employer approved, with SSN as a separate permission needing Finch's approval",
          "Rate limits are published per endpoint (20 or 12 requests a minute per application), with 429 errors that name which limit was hit",
          "A 99.90 per cent monthly uptime SLA with service credits is published for plans whose order form includes it",
          "Official SDKs for Node, Python, Java, Kotlin, Go and Ruby, with Node 10.8.2 and Python 2.8.3 released in the last 50 days",
          "A public DPA dated 7 August 2026, and a trust centre naming six sub-processors with hosting in AWS us-west-2"
        ],
        "weaknesses": [
          "Finch cannot create, preview or approve a payroll. Writes are limited to deductions and contributions, on Pro and Premier plans",
          "An access token does not expire until the connection is disconnected, and no rotation method was found in the reviewed documentation",
          "No idempotency keys were found, and no `Retry-After` header is documented on 429 responses",
          "Data is synced, not live. Automated integrations refresh every 24 hours and assisted integrations every 7 days",
          "Starter is $65 a month per connection for 24 providers and 15 connections. The other 250+ providers and deduction writes have no public price",
          "The MCP server is labelled beta, runs locally over stdio and is not in the official MCP registry"
        ],
        "agentNotes": [
          "Send `Finch-API-Version: 2020-09-17` and `Authorization: Bearer \u003caccess_token\u003e` on every request. A request without the version header fails with 400",
          "Call GET /introspect first to see the connection's products, status and whether it is automated or assisted before choosing endpoints",
          "Treat a 202 response as data not ready, not as data. Retry with backoff, and expect up to 14 days for an assisted connection's first sync",
          "Stay under 20 requests a minute on organisation endpoints and 12 on pay endpoints across all tokens. Batch IDs, and on 429 wait 60 seconds",
          "After a deduction write, poll the job by `job_id` until it completes before enrolling individuals. Enrolment overwrites an existing enrolment",
          "Start the MCP server with `--code-allow-http-gets` or a token without the benefits product when only reads are intended"
        ],
        "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": 71.6
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 84,
          "payments": 30,
          "reliability": 84,
          "schema": 87,
          "security": 66,
          "transparency": 65
        },
        "provenanceScore": 82
      },
      "connect": {
        "install": "pip install finch-api",
        "http": "curl https://api.tryfinch.com/employer/directory \\\n  -H 'Authorization: Bearer \u003caccess_token\u003e' \\\n  -H 'Finch-API-Version: 2020-09-17'",
        "config": {
          "mcpServers": {
            "finch_api": {
              "args": [
                "-y",
                "@tryfinch/finch-api-mcp"
              ],
              "command": "npx",
              "env": {
                "FINCH_ACCESS_TOKEN": "\u003ca specific connection's access token\u003e"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/payroll.employees",
        "tool": "https://letme.dev/finch"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Starter, one employer connection",
          "unit": "account-month",
          "usd": 65,
          "note": "read-only, 24 providers, up to 15 connections. Pro and Premier priced by sales"
        }
      ],
      "provenance": {
        "legalEntity": "Profound Platform Inc. (dba Finch)",
        "domain": "tryfinch.com",
        "domainRegistered": "2020-03-30",
        "endpointOnVendorDomain": true,
        "terms": "https://www.tryfinch.com/legal/msa",
        "privacy": "https://www.tryfinch.com/legal/privacy",
        "statusPage": "https://status.tryfinch.com",
        "changelog": "https://developer.tryfinch.com/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Master Service Agreement (last updated 7 August 2026) names Profound Platform Inc. (dba Finch), a Delaware corporation. The site footer reads Finch Inc.",
          "The site also publishes Terms of Service dated 24 March 2022 at tryfinch.com/legal/terms, which cover the website and self-serve use, a DPA dated 7 August 2026 at /legal/dpa and a Service Level Description at /legal/sla.",
          "The privacy policy (effective 31 July 2025) gives the address 2261 Market Street #4127, San Francisco, CA 94114, and says Finch processes developer customers' end-user data only on their behalf.",
          "www.tryfinch.com/.well-known/security.txt and tryfinch.com/.well-known/security.txt return 404.",
          "The API answers at api.tryfinch.com and Finch Connect at connect.tryfinch.com.",
          "RDAP for tryfinch.com gives a registration date of 2020-03-30 and Squarespace Domains II LLC as registrar."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/finch.json",
      "live": {
        "slug": "finch",
        "probe": {
          "target": "https://api.tryfinch.com",
          "method": "get",
          "lastAt": "2026-10-09T00:10:28.108424104Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 453,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 452,
          "p95ms24h": 492,
          "samples24h": 72,
          "samples30d": 72,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 70,
              "ok": 70
            },
            {
              "date": "2026-10-09",
              "probes": 2,
              "ok": 2
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.tryfinch.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T00:12:54.192736391Z"
        },
        "pages": [
          {
            "url": "https://developer.tryfinch.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:17:19.963606681Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "eb779dc32931"
          },
          {
            "url": "https://www.tryfinch.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:31:07.005025023Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "758462585b04"
          },
          {
            "url": "https://www.tryfinch.com/legal/msa",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:31:04.959158947Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "b7122ac1b3ac"
          }
        ],
        "updatedAt": "2026-10-09T00:12:54.192736391Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Check Technologies, Inc.",
        "b": "Profound Platform Inc. (dba Finch)",
        "name": "Vendor"
      },
      {
        "a": "https://api.checkhq.com",
        "b": "https://api.tryfinch.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT",
        "b": "Proprietary service under Finch's Master Service Agreement. The SDKs and the MCP server on GitHub are Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "2",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "2026-10-05",
        "name": "Last release"
      },
      {
        "a": "2021-09-03",
        "b": "2026-08-07",
        "name": "Terms last updated"
      },
      {
        "a": "2024-04-18",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "18 stars",
        "b": "16k npm/wk, 26k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Finch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth.",
        "question": "Which is better for AI agents, Check or Finch?"
      },
      {
        "answer": "Check takes an API key or an OAuth sign-in. Finch uses an OAuth sign-in.",
        "question": "Do Check and Finch need an API key?"
      },
      {
        "answer": "Yes. Check has a hosted endpoint at https://api.checkhq.com and Finch at https://api.tryfinch.com.",
        "question": "Can an agent call Check and Finch without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 83 against 71",
          "Security \u0026 auth, 74 against 66"
        ],
        "also": null,
        "goodFor": "A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.",
        "slug": "check-payroll",
        "watchFor": "No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 87 against 78",
          "Payments \u0026 pricing, 30 against 5",
          "Maintenance \u0026 community, 84 against 72",
          "Transparency \u0026 trust, 74 against 62"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine"
        ],
        "goodFor": "An application that needs to read employees, pay runs and pay statements from whatever payroll or HR system an employer already uses, or to write benefit deductions back.",
        "slug": "finch",
        "watchFor": "Finch cannot create, preview or approve a payroll. Writes are limited to deductions and contributions, on Pro and Premier plans"
      }
    ],
    "job": {
      "capability": "payroll.employees",
      "name": "Payroll employees"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-check-payroll.json",
        "title": "Argyle vs Check",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-check-payroll"
      },
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-finch.json",
        "title": "Argyle vs Finch",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-finch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-paychex.json",
        "title": "Check vs Paychex",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-paychex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-finch.json",
        "title": "Employment Hero Payroll vs Finch",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-finch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/everee-vs-finch.json",
        "title": "Everee vs Finch",
        "url": "https://www.anchorterminal.com/compare/everee-vs-finch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-gusto.json",
        "title": "Finch vs Gusto",
        "url": "https://www.anchorterminal.com/compare/finch-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-paychex.json",
        "title": "Finch vs Paychex",
        "url": "https://www.anchorterminal.com/compare/finch-vs-paychex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-salsa.json",
        "title": "Finch vs Salsa",
        "url": "https://www.anchorterminal.com/compare/finch-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-zeal.json",
        "title": "Finch vs Zeal",
        "url": "https://www.anchorterminal.com/compare/finch-vs-zeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-employment-hero.json",
        "title": "Check vs Employment Hero Payroll",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-employment-hero"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-everee.json",
        "title": "Check vs Everee",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-everee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto.json",
        "title": "Check vs Gusto",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-salsa.json",
        "title": "Check vs Salsa",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-zeal.json",
        "title": "Check vs Zeal",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-zeal"
      }
    ],
    "scores": [
      {
        "by": 4,
        "check-payroll": 80,
        "edge": "finch",
        "finch": 84,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 9,
        "check-payroll": 78,
        "edge": "finch",
        "finch": 87,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 12,
        "check-payroll": 83,
        "edge": "check-payroll",
        "finch": 71,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 8,
        "check-payroll": 74,
        "edge": "check-payroll",
        "finch": 66,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 25,
        "check-payroll": 5,
        "edge": "finch",
        "finch": 30,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "check-payroll": 72,
        "edge": "finch",
        "finch": 84,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 12,
        "check-payroll": 62,
        "edge": "finch",
        "finch": 74,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Finch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth. Both do payroll employees.",
    "verdicts": {
      "check-payroll": "Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.",
      "finch": "Graded on the REST API. An employer grants each connection named product permissions, and limits, error codes and a 99.9 per cent uptime SLA are published. Finch reads payroll and writes deductions but cannot run a payroll. Access tokens never expire, no idempotency keys were found, and writes and most providers need a sales-led plan."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/check-payroll-vs-finch",
    "json": "https://www.anchorterminal.com/compare/check-payroll-vs-finch.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/check-payroll-vs-finch.md",
    "slim": "https://www.anchorterminal.com/compare/check-payroll-vs-finch.min.md"
  },
  "markdown": "Finch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth. Both do payroll employees.\n\n- Check: grade B, 67.5/100, rank #208 of 722. Markdown https://www.anchorterminal.com/tools/check-payroll.md · JSON https://www.anchorterminal.com/api/v1/tools/check-payroll.json\n- Finch: grade BB, 71.6/100, rank #104 of 722. Markdown https://www.anchorterminal.com/tools/finch.md · JSON https://www.anchorterminal.com/api/v1/tools/finch.json\n\n## Which one, for what\n\n### Check (B)\n\nGood for: A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.\n\nAhead on:\n- Agent ergonomics, 83 against 71\n- Security \u0026 auth, 74 against 66\n\nWatch for: No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact\n\n### Finch (BB)\n\nGood for: An application that needs to read employees, pay runs and pay statements from whatever payroll or HR system an employer already uses, or to write benefit deductions back.\n\nAhead on:\n- Schema \u0026 documentation, 87 against 78\n- Payments \u0026 pricing, 30 against 5\n- Maintenance \u0026 community, 84 against 72\n- Transparency \u0026 trust, 74 against 62\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n\nWatch for: Finch cannot create, preview or approve a payroll. Writes are limited to deductions and contributions, on Pro and Premier plans\n\n\n## Score by category\n\n| Category | Weight | Check | Finch | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 84 | Finch +4 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 87 | Finch +9 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 71 | Check +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 74 | 66 | Check +8 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 5 | 30 | Finch +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 84 | Finch +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 74 | Finch +12 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.5 · B** | **71.6 · BB** | |\n\n## Facts side by side\n\n| Fact | Check | Finch |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Check Technologies, Inc. | Profound Platform Inc. (dba Finch) |\n| Hosted endpoint | `https://api.checkhq.com` | `https://api.tryfinch.com` |\n| Transports | HTTP | HTTP, stdio |\n| Auth | OAuth or key | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT | Proprietary service under Finch's Master Service Agreement. The SDKs and the MCP server on GitHub are Apache-2.0 |\n| Tools exposed | none | 2 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-07 | 2026-10-05 |\n| Terms last updated | 2021-09-03 | 2026-08-07 |\n| Privacy policy last updated | 2024-04-18 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 18 stars | 16k npm/wk, 26k PyPI/wk |\n\n## Verdicts\n\n**Check.** Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.\n\n**Finch.** Graded on the REST API. An employer grants each connection named product permissions, and limits, error codes and a 99.9 per cent uptime SLA are published. Finch reads payroll and writes deductions but cannot run a payroll. Access tokens never expire, no idempotency keys were found, and writes and most providers need a sales-led plan.\n\n## Before you call either\n\n### Check\n\n1. Use https://sandbox.checkhq.com with the sandbox key and https://api.checkhq.com with the production key. A key is not valid across environments\n2. Preview a payroll before approving it, then pass `preview_started_at` to POST /payrolls/{id}/approve so a stale preview fails with 409\n3. Send `X-Idempotency-Key` on every write. Keys expire after 24 hours, so list the resource before retrying later than that\n4. On 429 wait for `Retry-After`. The limit is 10 requests a second in sandbox and for partners paying fewer than 1,000 payees a month, with 100 concurrent requests\n5. Connect the MCP server with `?read_only=true` or `X-MCP-Readonly: true` unless writes are intended. In production, approving a payroll moves money\n\n### Finch\n\n1. Send `Finch-API-Version: 2020-09-17` and `Authorization: Bearer \u003caccess_token\u003e` on every request. A request without the version header fails with 400\n2. Call GET /introspect first to see the connection's products, status and whether it is automated or assisted before choosing endpoints\n3. Treat a 202 response as data not ready, not as data. Retry with backoff, and expect up to 14 days for an assisted connection's first sync\n4. Stay under 20 requests a minute on organisation endpoints and 12 on pay endpoints across all tokens. Batch IDs, and on 429 wait 60 seconds\n5. After a deduction write, poll the job by `job_id` until it completes before enrolling individuals. Enrolment overwrites an existing enrolment\n6. Start the MCP server with `--code-allow-http-gets` or a token without the benefits product when only reads are intended\n\n## Questions\n\n### Which is better for AI agents, Check or Finch?\n\nFinch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth.\n\n### Do Check and Finch need an API key?\n\nCheck takes an API key or an OAuth sign-in. Finch uses an OAuth sign-in.\n\n### Can an agent call Check and Finch without installing anything?\n\nYes. Check has a hosted endpoint at https://api.checkhq.com and Finch at https://api.tryfinch.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/check-payroll-vs-finch.json, and with the fewest tokens: https://www.anchorterminal.com/compare/check-payroll-vs-finch.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"check-payroll\", \"b\": \"finch\"}`. From a terminal: `anchor compare check-payroll finch`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/check-payroll.json and https://www.anchorterminal.com/api/v1/tools/finch.json\n\n## Other comparisons with Check or Finch\n\n- [Argyle vs Check](https://www.anchorterminal.com/compare/argyle-vs-check-payroll.md)\n- [Argyle vs Finch](https://www.anchorterminal.com/compare/argyle-vs-finch.md)\n- [Check vs Paychex](https://www.anchorterminal.com/compare/check-payroll-vs-paychex.md)\n- [Employment Hero Payroll vs Finch](https://www.anchorterminal.com/compare/employment-hero-vs-finch.md)\n- [Everee vs Finch](https://www.anchorterminal.com/compare/everee-vs-finch.md)\n- [Finch vs Gusto](https://www.anchorterminal.com/compare/finch-vs-gusto.md)\n- [Finch vs Paychex](https://www.anchorterminal.com/compare/finch-vs-paychex.md)\n- [Finch vs Salsa](https://www.anchorterminal.com/compare/finch-vs-salsa.md)\n- [Finch vs Zeal](https://www.anchorterminal.com/compare/finch-vs-zeal.md)\n- [Check vs Employment Hero Payroll](https://www.anchorterminal.com/compare/check-payroll-vs-employment-hero.md)\n- [Check vs Everee](https://www.anchorterminal.com/compare/check-payroll-vs-everee.md)\n- [Check vs Gusto](https://www.anchorterminal.com/compare/check-payroll-vs-gusto.md)\n- [Check vs Salsa](https://www.anchorterminal.com/compare/check-payroll-vs-salsa.md)\n- [Check vs Zeal](https://www.anchorterminal.com/compare/check-payroll-vs-zeal.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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": "Check vs Finch",
        "url": ""
      }
    ],
    "description": "Finch scores 71.6 (BB) on agent readiness against Check's 67.5 (B), and leads in 5 of 7 scored categories. Check leads on agent ergonomics and security \u0026 auth. Both do payroll employees. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Check B 67.5",
      "Finch BB 71.6",
      "scores"
    ],
    "h1": "Check vs Finch",
    "image": "https://www.anchorterminal.com/assets/og/compare-check-payroll-vs-finch.png",
    "path": "/compare/check-payroll-vs-finch",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Check vs Finch for AI agents, B 67.5 vs BB 71.6 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/check-payroll-vs-finch"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 680
  },
  "version": 1
}
