{
  "data": {
    "a": {
      "slug": "payfit",
      "name": "PayFit",
      "vendor": "PayFit SAS",
      "vendorUrl": "https://payfit.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "PayFit is payroll and HR software for small and mid-sized employers in France, the United Kingdom and Spain. Its Partner API reads employees, contracts, payslips, absences and accounting exports, with a customer API key or partner OAuth.",
      "url": "https://www.anchorterminal.com/tools/payfit",
      "markdownUrl": "https://www.anchorterminal.com/tools/payfit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/payfit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/payfit.json",
      "license": "Proprietary service under PayFit's general terms of service",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "mixed",
      "authNotes": "Two routes. A customer's company admin creates an API key in the PayFit app at app.payfit.com/integrations/hub/api, picks its scopes, and sees it once. It is sent as a Bearer token and reaches that company only. Partners use the OAuth 2.0 authorisation code grant at oauth.payfit.com with a client ID and secret that PayFit issues after reviewing the use case, and the scopes a partner may request are fixed at approval. The partner guides say PayFit is temporarily not accepting new integration requests.",
      "pricing": "paid",
      "pricingNotes": "No charge for API calls was found. Access comes with a PayFit subscription. In France the API is included from the Paie avancée plan, listed at 27 € a collaborator a month plus a 49 € monthly subscription for 1 to 3 collaborators, before tax. The UK site lists no prices and sends buyers to a demo, and its contract appendix includes API access in the Payroll Core plan. The French site links a free signup and a first month free until 31 October 2026. Whether signup needs a card was not established. A sandbox company is given only to accepted partners (checked 2026-10-09).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API guides, the OpenAPI file or the French pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://developers.payfit.io/",
      "llmsTxt": "https://developers.payfit.io/llms.txt",
      "openapi": "https://developers.payfit.io/openapi/partner-api.json",
      "capabilities": [
        "payroll.employees",
        "hr.time-off",
        "hr.employees"
      ],
      "tags": [
        "hosted",
        "payroll",
        "hr",
        "api-key",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "france",
        "uk",
        "spain",
        "status-page",
        "iso-27001"
      ],
      "lastRelease": "2026-07-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.5,
        "grade": "C",
        "agentReady": false,
        "rank": 656,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 28,
          "payments": 10,
          "reliability": 79,
          "schema": 78,
          "security": 51,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found.",
        "bestFor": "An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.",
        "strengths": [
          "Public OpenAPI 3.0 file with 31 operations, each documenting 400, 401, 403 and 404 responses with an example",
          "llms.txt and a Markdown twin for every guide, reference and changelog page",
          "Customer API keys and partner OAuth tokens are limited to chosen scopes from 22, with read and write separate",
          "Rate limits are published as 50 read and 20 write requests a second, with `X-RateLimit` headers on responses",
          "The contract appendix of 15 June 2026 lists sub-processors by purpose and region, and the security page states hosting in France"
        ],
        "weaknesses": [
          "No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports",
          "The partner guides say PayFit is temporarily not accepting new integration requests, with no reopening date",
          "The webhook guide documents a call that sends `clientSecret` and `clientId` in the URL query string",
          "No idempotency keys, no official SDK and no MCP server were found in the reviewed documentation",
          "Fifteen of 31 operations are France-only and two are UK-only, including contract creation and both accounting exports"
        ],
        "agentNotes": [
          "Have a company admin create the key at app.payfit.com/integrations/hub/api with only the scopes the task needs. The key is shown once",
          "POST the key to `https://oauth.payfit.com/introspect` to get `company_id`, then call `https://partner-api.payfit.com/companies/{companyId}/...`",
          "Page lists with `nextPageToken` and `maxResults`, which defaults to 10 and stops at 50",
          "Check before repeating a failed POST. There is no idempotency key, and `POST /absences` creates an absence that is already validated",
          "A collaborator or contract created through the API stays incomplete until an HR admin finishes it in the PayFit app, and a new contract takes 2 to 5 minutes to appear"
        ],
        "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": 55.5
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 28,
          "payments": 10,
          "reliability": 79,
          "schema": 78,
          "security": 51,
          "transparency": 56
        },
        "provenanceScore": 84
      },
      "connect": {
        "http": "curl --request GET --url https://partner-api.payfit.com/companies/{companyId} --header 'Authorization: Bearer YOUR-API-KEY'"
      },
      "letme": {
        "capability": "https://letme.dev/payroll.employees",
        "tool": "https://letme.dev/payfit"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "PayFit SAS",
        "domain": "payfit.com",
        "domainRegistered": "2006-11-17",
        "endpointOnVendorDomain": true,
        "terms": "https://payfit.com/general-terms-of-service/",
        "privacy": "https://payfit.com/privacy-policy/",
        "statusPage": "https://status.payfit.com",
        "changelog": "https://developers.payfit.io/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The French general conditions (last updated 8 September 2026) name Payfit, a société par actions simplifiée registered in Paris under number 813 487 899, at 37-39 avenue Trudaine, 75009 Paris.",
          "The linked terms and privacy policy are the English ones, both last updated 15 June 2026. They name Payfit Ltd, registered in England and Wales under number 11623900, which contracts with UK clients. French clients contract under https://payfit.com/fr/conditions-generales-de-services/.",
          "No separate API terms were found. Clause 1.4 of the terms covers third-party services connected through the Payfit API, and the appendix lists access to the API as a plan item.",
          "The API answers at partner-api.payfit.com and OAuth at oauth.payfit.com. The documentation is on developers.payfit.io, a second domain.",
          "https://payfit.com/.well-known/security.txt returned 404. The security contact page gives security@payfit.com and a PGP key whose stated expiry is 27 August 2026.",
          "RDAP for payfit.com gives a registration date of 2006-11-17 and Gandi SAS as registrar."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/payfit.json",
      "live": {
        "slug": "payfit",
        "vendorStatus": {
          "page": "https://status.payfit.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:51:07.656388577Z"
        },
        "pages": [
          {
            "url": "https://developers.payfit.io/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:36:07.999420808Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1d2fd9ebd502"
          },
          {
            "url": "https://payfit.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:03.382729135Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "99ea5438a60b"
          },
          {
            "url": "https://payfit.com/general-terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:01.261262581Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "816c4583c340"
          }
        ],
        "updatedAt": "2026-10-10T00:51:07.656388577Z"
      }
    },
    "answer": "PayFit scores 55.5 (C) on agent readiness against Worklio's 38.6 (E), and leads in 6 of 7 scored categories. Worklio leads on payments \u0026 pricing.",
    "b": {
      "slug": "worklio",
      "name": "Worklio",
      "vendor": "Worklio, Inc.",
      "vendorUrl": "https://www.worklio.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Embedded US payroll from Worklio, Inc. for software platforms, PEOs and payroll bureaus. A partner's backend creates companies and workers, runs payroll in steps and reads tax forms through a REST API, with white-label screens as an alternative.",
      "url": "https://www.anchorterminal.com/tools/worklio",
      "markdownUrl": "https://www.anchorterminal.com/tools/worklio.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/worklio.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/worklio.json",
      "license": "Proprietary service. The public Terms of Use date from 2014 and the partner agreement isn't public. The front-end library sits in a private repository",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.worklio.com",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Every call takes a bearer JWT from `POST https://api.worklio.com/connect/token`. In the sandbox a developer registers at apiweb.worklio.com/RegisterDeveloper and uses the password grant with the account's username and password, scope `api`, and a client secret the docs print and describe as shared by all sandbox users. Tokens last 24 hours. Browser apps use an OpenID Connect redirect flow through `@worklio/sdk`, which isn't published and is requested from support. Production credentials, single sign-on and allowed origins are set up by Worklio. A System user has full rights over every company it created. This is embedded-payroll partner access, with no route into an employer's payroll account elsewhere.",
      "pricing": "paid",
      "pricingNotes": "A partner's price is set in its agreement and isn't public. The partner pages publish retail list prices per person per month ($10 for Full-Service Payroll, $81 for all 19 modules) and call them illustrative, not a quote, with base, setup and per-use fees excluded. The sandbox is self-serve after developer registration, so an agent's owner can start without a contract. Whether registration asks for a card was not read, because apiweb.worklio.com disallows crawlers (checked 2026-10-09).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the reference pages read or the website (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://apidocs.worklio.com/docs/overview",
      "llmsTxt": "https://apidocs.worklio.com/llms.txt",
      "capabilities": [
        "payroll.run",
        "payroll.embedded",
        "payroll.employees",
        "payroll.tax-filing",
        "payroll.contractors"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "partner-access",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-06-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 38.6,
        "grade": "E",
        "agentReady": false,
        "rank": 919,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 11,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 44,
          "maintenance": 25,
          "payments": 25,
          "reliability": 25,
          "schema": 71,
          "security": 48,
          "transparency": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -3,
        "negativeNotes": [
          "30 June 2026. The changelog entry that announces the reworked Time-Off Requests API says the older `timeoffrequests` routes were replaced by hyphenated routes and tells integrators to update, in the same note and with no earlier notice found. Whether partners were told privately is unknown, so the smallest deduction applies (-3). https://apidocs.worklio.com/changelog/v1-api-updates"
        ],
        "verdict": "Worklio documents 853 REST operations with an OpenAPI fragment on every reference page, and a developer can register for the sandbox without a sales call. No rate limits or public SDK were found, the status page is password protected, and the payroll guide tells callers to treat an HTTP 500 as the signal to finalise.",
        "bestFor": "A software platform, PEO or payroll bureau that wants to sell US payroll under its own brand and can sign a partner agreement, with Worklio handling tax filing and money movement.",
        "strengths": [
          "853 documented operations across 17 API groups, each reference page carrying an OpenAPI 3.0.4 fragment, plus llms.txt and a Markdown copy of every docs page",
          "Sandbox access is self-serve. A developer registers, uses a shared sandbox client secret printed in the docs and gets a bearer token",
          "A payroll run moves through steps with next, previous, discard, lock and finalise calls, and starting a scheduled run twice returns the same run",
          "Every operation states which user levels may call it (System, Admin, ClientAdmin, Employee, or anonymous with a link token)",
          "The security page claims SOC 2 Type 2, ISO 27001, ISO 27018 and ISO 9001, with third-party penetration testing"
        ],
        "weaknesses": [
          "No rate limits, 429 handling or idempotency keys were found in the reviewed documentation",
          "status.worklio.com asks for a password, so no public incident history exists",
          "The Run Payroll guide says the `next` call answers HTTP 500 with an untranslated message when a run is ready to finalise",
          "No public SDK. `@worklio/sdk` and the component library sit in a private repository granted through support",
          "The public Terms of Use are dated 21 December 2014 and describe a small-business HR site. The partner agreement and production prices aren't public"
        ],
        "agentNotes": [
          "Send `api-version: 2.0` on `/wep` calls. The reference marks the header as required",
          "Get a token from `POST https://api.worklio.com/connect/token` with the password grant and scope `api`. It lasts 24 hours, so fetch a new one daily",
          "Run payroll as start, `next` until it answers 500 with \"Next step operation is not allowed\", then `finalize`. Don't treat that 500 as a failure",
          "Don't retry bonus, off-cycle, void or termination payroll starts blindly. The reference says those calls are not idempotent",
          "Most `/wep` list endpoints return the whole result set. Paging, `filter` and `sort` work only under `/api/public`, and a `DataToken` expires after 60 seconds"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 38.6
          }
        ],
        "editorialScores": {
          "ergonomics": 44,
          "maintenance": 25,
          "payments": 25,
          "reliability": 25,
          "schema": 71,
          "security": 48,
          "transparency": 28
        },
        "provenanceScore": 67
      },
      "connect": {
        "http": "curl -s -X POST \"https://api.worklio.com/connect/token\" \\\n  -H \"accept: application/json\" \\\n  -H \"content-type: application/x-www-form-urlencoded\" \\\n  --data-urlencode \"grant_type=password\" \\\n  --data-urlencode \"username=$WORKLIO_USERNAME\" \\\n  --data-urlencode \"password=$WORKLIO_PASSWORD\" \\\n  --data-urlencode \"scope=api\" \\\n  --data-urlencode \"client_id=wep_resourceowner.public.api\" \\\n  --data-urlencode \"client_secret=$WORKLIO_CLIENT_SECRET\""
      },
      "letme": {
        "capability": "https://letme.dev/payroll.run",
        "tool": "https://letme.dev/worklio"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Worklio, Inc.",
        "domain": "worklio.com",
        "domainRegistered": "2015-03-10",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://www.worklio.com/privacy",
        "statusPage": "",
        "changelog": "https://apidocs.worklio.com/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The site footer reads \"© 2026 Worklio, Inc.\". The about page says Worklio LLC was established in 2017. No postal address was found on the pages read.",
          "No terms link is given. The only public terms are the Terms of Use at www.worklio.com/terms, last updated 21 December 2014, which describe an HR site for small businesses and predate the embedded API. The partner agreement that governs API use isn't public.",
          "www.worklio.com/privacy embeds a policy hosted at www.iubenda.com/privacy-policy/25719508. iubenda's robots.txt disallows that path, so the policy text was not read.",
          "status.worklio.com exists (an UptimeRobot page) and answers \"This status page is password protected\", so it is not recorded as a public status page.",
          "www.worklio.com/.well-known/security.txt returns 404.",
          "The changelog holds two entries, both dated 30 June 2026.",
          "RDAP for worklio.com gives a registration date of 2015-03-10."
        ],
        "score": 67
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/worklio.json",
      "live": {
        "slug": "worklio",
        "probe": {
          "target": "https://api.worklio.com",
          "method": "get",
          "lastAt": "2026-10-10T03:53:49.943308052Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 477,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 472,
          "p95ms24h": 563,
          "samples24h": 209,
          "samples30d": 209,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 169,
              "ok": 169
            },
            {
              "date": "2026-10-10",
              "probes": 40,
              "ok": 40
            }
          ]
        },
        "securityTxt": {
          "url": "https://worklio.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-09T15:40:15.384506907Z"
        },
        "llmsTxt": {
          "url": "https://apidocs.worklio.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:03:01.936154922Z"
        },
        "pages": [
          {
            "url": "https://apidocs.worklio.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:32:35.888852109Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6265fd953972"
          },
          {
            "url": "https://www.worklio.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:55:49.267083421Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "363f8b612a19"
          }
        ],
        "updatedAt": "2026-10-10T03:53:49.943308052Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "PayFit SAS",
        "b": "Worklio, Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.worklio.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "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 PayFit's general terms of service",
        "b": "Proprietary service. The public Terms of Use date from 2014 and the partner agreement isn't public. The front-end library sits in a private repository",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-07-23",
        "b": "2026-06-30",
        "name": "Last release"
      },
      {
        "a": "2026-06-15",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-06-15",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "PayFit scores 55.5 (C) on agent readiness against Worklio's 38.6 (E), and leads in 6 of 7 scored categories. Worklio leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, PayFit or Worklio?"
      },
      {
        "answer": "PayFit takes an API key or an OAuth sign-in. Worklio uses an OAuth sign-in.",
        "question": "Do PayFit and Worklio need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for PayFit. Worklio has a hosted endpoint at https://api.worklio.com.",
        "question": "Can an agent call PayFit and Worklio without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 79 against 25",
          "Schema \u0026 documentation, 78 against 71",
          "Agent ergonomics, 51 against 44",
          "Transparency \u0026 trust, 70 against 48"
        ],
        "also": [
          "No incidents deducted, where Worklio loses 3 points for them"
        ],
        "goodFor": "An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.",
        "slug": "payfit",
        "watchFor": "No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 25 against 10"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A software platform, PEO or payroll bureau that wants to sell US payroll under its own brand and can sign a partner agreement, with Worklio handling tax filing and money movement.",
        "slug": "worklio",
        "watchFor": "No rate limits, 429 handling or idempotency keys were found in the reviewed documentation"
      }
    ],
    "job": {
      "capability": "payroll.employees",
      "name": "Payroll records"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-payfit.json",
        "title": "Argyle vs PayFit",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-worklio.json",
        "title": "Argyle vs Worklio",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-payfit.json",
        "title": "Check vs PayFit",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit.json",
        "title": "Employment Hero Payroll vs PayFit",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/everee-vs-payfit.json",
        "title": "Everee vs PayFit",
        "url": "https://www.anchorterminal.com/compare/everee-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-payfit.json",
        "title": "Finch vs PayFit",
        "url": "https://www.anchorterminal.com/compare/finch-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-worklio.json",
        "title": "Finch vs Worklio",
        "url": "https://www.anchorterminal.com/compare/finch-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-payfit.json",
        "title": "Gusto vs PayFit",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paychex-vs-payfit.json",
        "title": "Paychex vs PayFit",
        "url": "https://www.anchorterminal.com/compare/paychex-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paychex-vs-worklio.json",
        "title": "Paychex vs Worklio",
        "url": "https://www.anchorterminal.com/compare/paychex-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/payfit-vs-salsa.json",
        "title": "PayFit vs Salsa",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/payfit-vs-zeal.json",
        "title": "PayFit vs Zeal",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-zeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-worklio.json",
        "title": "Check vs Worklio",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-worklio.json",
        "title": "Employment Hero Payroll vs Worklio",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/everee-vs-worklio.json",
        "title": "Everee vs Worklio",
        "url": "https://www.anchorterminal.com/compare/everee-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-worklio.json",
        "title": "Gusto vs Worklio",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/salsa-vs-worklio.json",
        "title": "Salsa vs Worklio",
        "url": "https://www.anchorterminal.com/compare/salsa-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/worklio-vs-zeal.json",
        "title": "Worklio vs Zeal",
        "url": "https://www.anchorterminal.com/compare/worklio-vs-zeal"
      }
    ],
    "scores": [
      {
        "by": 54,
        "edge": "payfit",
        "key": "reliability",
        "name": "Reliability",
        "payfit": 79,
        "weight": 16,
        "worklio": 25
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "edge": "payfit",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "payfit": 78,
        "weight": 13,
        "worklio": 71
      },
      {
        "by": 7,
        "edge": "payfit",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "payfit": 51,
        "weight": 13,
        "worklio": 44
      },
      {
        "by": 3,
        "edge": "payfit",
        "key": "security",
        "name": "Security \u0026 auth",
        "payfit": 51,
        "weight": 14,
        "worklio": 48
      },
      {
        "by": 15,
        "edge": "worklio",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "payfit": 10,
        "weight": 10,
        "worklio": 25
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 3,
        "edge": "payfit",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "payfit": 28,
        "weight": 7,
        "worklio": 25
      },
      {
        "by": 22,
        "edge": "payfit",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "payfit": 70,
        "weight": 7,
        "worklio": 48
      }
    ],
    "summary": "PayFit scores 55.5 (C) on agent readiness against Worklio's 38.6 (E), and leads in 6 of 7 scored categories. Worklio leads on payments \u0026 pricing. Both do payroll records.",
    "verdicts": {
      "payfit": "A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found.",
      "worklio": "Worklio documents 853 REST operations with an OpenAPI fragment on every reference page, and a developer can register for the sandbox without a sales call. No rate limits or public SDK were found, the status page is password protected, and the payroll guide tells callers to treat an HTTP 500 as the signal to finalise."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/payfit-vs-worklio",
    "json": "https://www.anchorterminal.com/compare/payfit-vs-worklio.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/payfit-vs-worklio.md",
    "slim": "https://www.anchorterminal.com/compare/payfit-vs-worklio.min.md"
  },
  "markdown": "PayFit scores 55.5 (C) on agent readiness against Worklio's 38.6 (E), and leads in 6 of 7 scored categories. Worklio leads on payments \u0026 pricing. Both do payroll records.\n\n- PayFit: grade C, 55.5/100, rank #656 of 950. Markdown https://www.anchorterminal.com/tools/payfit.md · JSON https://www.anchorterminal.com/api/v1/tools/payfit.json\n- Worklio: grade E, 38.6/100, rank #919 of 950. Markdown https://www.anchorterminal.com/tools/worklio.md · JSON https://www.anchorterminal.com/api/v1/tools/worklio.json\n- Best payroll APIs and embedded payroll for AI agents: https://www.anchorterminal.com/best/payroll/index.md\n- All 55 payroll comparisons: https://www.anchorterminal.com/compare/payroll/index.md\n\n## Which one, for what\n\n### PayFit (C)\n\nGood for: An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.\n\nAhead on:\n- Reliability, 79 against 25\n- Schema \u0026 documentation, 78 against 71\n- Agent ergonomics, 51 against 44\n- Transparency \u0026 trust, 70 against 48\n\nAlso in its favour:\n- No incidents deducted, where Worklio loses 3 points for them\n\nWatch for: No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports\n\n### Worklio (E)\n\nGood for: A software platform, PEO or payroll bureau that wants to sell US payroll under its own brand and can sign a partner agreement, with Worklio handling tax filing and money movement.\n\nAhead on:\n- Payments \u0026 pricing, 25 against 10\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No rate limits, 429 handling or idempotency keys were found in the reviewed documentation\n\n\n## Score by category\n\n| Category | Weight | PayFit | Worklio | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 79 | 25 | PayFit +54 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 71 | PayFit +7 |\n| Agent ergonomics | 13% (16.2 this run) | 51 | 44 | PayFit +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 51 | 48 | PayFit +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 25 | Worklio +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 28 | 25 | PayFit +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 48 | PayFit +22 |\n| Negative events | ≤15 | 0 | -3 | |\n| **Total** | | **55.5 · C** | **38.6 · E** | |\n\n## Facts side by side\n\n| Fact | PayFit | Worklio |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | PayFit SAS | Worklio, Inc. |\n| Hosted endpoint | no (local only) | `https://api.worklio.com` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under PayFit's general terms of service | Proprietary service. The public Terms of Use date from 2014 and the partner agreement isn't public. The front-end library sits in a private repository |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-07-23 | 2026-06-30 |\n| Terms last updated | 2026-06-15 | no document linked |\n| Privacy policy last updated | 2026-06-15 | couldn't be read |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | yes |  |\n| Terms or service can change without notice | yes |  |\n| Arbitration or class-action waiver | not found in the text |  |\n\n## Verdicts\n\n**PayFit.** A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found.\n\n**Worklio.** Worklio documents 853 REST operations with an OpenAPI fragment on every reference page, and a developer can register for the sandbox without a sales call. No rate limits or public SDK were found, the status page is password protected, and the payroll guide tells callers to treat an HTTP 500 as the signal to finalise.\n\n## Before you call either\n\n### PayFit\n\n1. Have a company admin create the key at app.payfit.com/integrations/hub/api with only the scopes the task needs. The key is shown once\n2. POST the key to `https://oauth.payfit.com/introspect` to get `company_id`, then call `https://partner-api.payfit.com/companies/{companyId}/...`\n3. Page lists with `nextPageToken` and `maxResults`, which defaults to 10 and stops at 50\n4. Check before repeating a failed POST. There is no idempotency key, and `POST /absences` creates an absence that is already validated\n5. A collaborator or contract created through the API stays incomplete until an HR admin finishes it in the PayFit app, and a new contract takes 2 to 5 minutes to appear\n\n### Worklio\n\n1. Send `api-version: 2.0` on `/wep` calls. The reference marks the header as required\n2. Get a token from `POST https://api.worklio.com/connect/token` with the password grant and scope `api`. It lasts 24 hours, so fetch a new one daily\n3. Run payroll as start, `next` until it answers 500 with \"Next step operation is not allowed\", then `finalize`. Don't treat that 500 as a failure\n4. Don't retry bonus, off-cycle, void or termination payroll starts blindly. The reference says those calls are not idempotent\n5. Most `/wep` list endpoints return the whole result set. Paging, `filter` and `sort` work only under `/api/public`, and a `DataToken` expires after 60 seconds\n\n## Questions\n\n### Which is better for AI agents, PayFit or Worklio?\n\nPayFit scores 55.5 (C) on agent readiness against Worklio's 38.6 (E), and leads in 6 of 7 scored categories. Worklio leads on payments \u0026 pricing.\n\n### Do PayFit and Worklio need an API key?\n\nPayFit takes an API key or an OAuth sign-in. Worklio uses an OAuth sign-in.\n\n### Can an agent call PayFit and Worklio without installing anything?\n\nNo hosted endpoint is listed for PayFit. Worklio has a hosted endpoint at https://api.worklio.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/payfit-vs-worklio.json, and with the fewest tokens: https://www.anchorterminal.com/compare/payfit-vs-worklio.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"payfit\", \"b\": \"worklio\"}`. From a terminal: `anchor compare payfit worklio`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/payfit.json and https://www.anchorterminal.com/api/v1/tools/worklio.json\n\n## Other comparisons with PayFit or Worklio\n\n- [Argyle vs PayFit](https://www.anchorterminal.com/compare/argyle-vs-payfit.md)\n- [Argyle vs Worklio](https://www.anchorterminal.com/compare/argyle-vs-worklio.md)\n- [Check vs PayFit](https://www.anchorterminal.com/compare/check-payroll-vs-payfit.md)\n- [Employment Hero Payroll vs PayFit](https://www.anchorterminal.com/compare/employment-hero-vs-payfit.md)\n- [Everee vs PayFit](https://www.anchorterminal.com/compare/everee-vs-payfit.md)\n- [Finch vs PayFit](https://www.anchorterminal.com/compare/finch-vs-payfit.md)\n- [Finch vs Worklio](https://www.anchorterminal.com/compare/finch-vs-worklio.md)\n- [Gusto vs PayFit](https://www.anchorterminal.com/compare/gusto-vs-payfit.md)\n- [Paychex vs PayFit](https://www.anchorterminal.com/compare/paychex-vs-payfit.md)\n- [Paychex vs Worklio](https://www.anchorterminal.com/compare/paychex-vs-worklio.md)\n- [PayFit vs Salsa](https://www.anchorterminal.com/compare/payfit-vs-salsa.md)\n- [PayFit vs Zeal](https://www.anchorterminal.com/compare/payfit-vs-zeal.md)\n- [Check vs Worklio](https://www.anchorterminal.com/compare/check-payroll-vs-worklio.md)\n- [Employment Hero Payroll vs Worklio](https://www.anchorterminal.com/compare/employment-hero-vs-worklio.md)\n- [Everee vs Worklio](https://www.anchorterminal.com/compare/everee-vs-worklio.md)\n- [Gusto vs Worklio](https://www.anchorterminal.com/compare/gusto-vs-worklio.md)\n- [Salsa vs Worklio](https://www.anchorterminal.com/compare/salsa-vs-worklio.md)\n- [Worklio vs Zeal](https://www.anchorterminal.com/compare/worklio-vs-zeal.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "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": "PayFit vs Worklio",
        "url": ""
      }
    ],
    "description": "PayFit scores 55.5 (C) to Worklio's 38.6 (E) for payroll records. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "PayFit C 55.5",
      "Worklio E 38.6",
      "scores"
    ],
    "h1": "PayFit vs Worklio",
    "image": "https://www.anchorterminal.com/assets/og/compare-payfit-vs-worklio.png",
    "path": "/compare/payfit-vs-worklio",
    "published": "2026-10-01",
    "section": "tools",
    "title": "PayFit vs Worklio for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/payfit-vs-worklio"
  },
  "tokens": {
    "markdown": 2200,
    "slim": 680
  },
  "version": 1
}
