{
  "data": {
    "a": {
      "slug": "employment-hero",
      "name": "Employment Hero Payroll",
      "vendor": "Employment Hero Pty Ltd",
      "vendorUrl": "https://employmenthero.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Employment Hero Payroll (formerly KeyPay) is cloud payroll for Australia, New Zealand, the United Kingdom, Singapore and Malaysia. Its REST API covers businesses, employees, timesheets, leave, pay runs and reports, with an API key or OAuth 2.0.",
      "url": "https://www.anchorterminal.com/tools/employment-hero",
      "markdownUrl": "https://www.anchorterminal.com/tools/employment-hero.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/employment-hero.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/employment-hero.json",
      "repo": "https://github.com/Thinkei/keypay-dotnet-v2",
      "license": "Proprietary service under Employment Hero's General Terms. The `KeyPayV2` .NET client is MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "nuget",
          "name": "KeyPayV2"
        }
      ],
      "auth": "mixed",
      "authNotes": "Graded on the Payroll API. A user with a payroll login generates an API key under My Account, with no partner review, and sends it as the HTTP Basic username with a blank password. The key acts with that user's access, and Change API Key invalidates the old one. OAuth 2.0 is the other route. A support request with the application's name, callback URL and logo returns a client ID and secret, and the authorisation code grant at `/oauth/authorise` and `/oauth/token` returns a 24-hour access token and a 28-day refresh token. The spec names `read` and `write` scopes, and the guide's sample token shows an empty scope.",
      "pricing": "paid",
      "pricingNotes": "No charge for API calls was found. Access comes with an Employment Hero Payroll subscription. The Australian pricing page lists the Payroll plan at $10 with conditions, a minimum of 10 users and billing by user count, with prices stated as AUD ex. GST in the page's disclaimers. Employment Unlimited, which includes Payroll, is priced through sales. No free tier, trial or sandbox for Payroll was found on the pages read, so an agent starts only where a paying account exists (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API guides, the five Swagger files or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 6,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://api.keypay.com.au/",
      "openapi": "https://api.keypay.com.au/swagger-au.json",
      "capabilities": [
        "payroll.run",
        "payroll.employees",
        "payroll.embedded",
        "payroll.tax-filing",
        "payroll.contractors",
        "hr.time-off"
      ],
      "tags": [
        "hosted",
        "payroll",
        "api-key",
        "oauth",
        "openapi",
        "webhooks",
        "dotnet",
        "white-label",
        "australia",
        "new-zealand",
        "uk",
        "singapore",
        "malaysia",
        "status-page"
      ],
      "lastRelease": "2026-10-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.4,
        "grade": "D",
        "agentReady": false,
        "rank": 769,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 53,
          "maintenance": 68,
          "payments": 10,
          "reliability": 65,
          "schema": 51,
          "security": 46,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Five public Swagger 2.0 files describe 660 to 821 operations per region, and any payroll user can generate an API key without a partner review. The key carries its user's whole access, no idempotency keys or API changelog were found, and the only official client is for .NET.",
        "bestFor": "An agent acting for an employer or bureau already on Employment Hero Payroll in Australia, New Zealand, the United Kingdom, Singapore or Malaysia, and white label partners who create businesses through the brand endpoints.",
        "strengths": [
          "Public Swagger 2.0 file for each of five regions, 728 operations for Australia and 821 for the United Kingdom, downloadable without a login",
          "A payroll user generates an API key under My Account with no partner review, and Change API Key invalidates the old one",
          "OData `$filter`, `$orderby`, `$top` and `$skip` on most GET operations, with `$top` capped at 100",
          "Pay run endpoints cover create, recalculate, warnings, approval start, finalise and unlock, so a run can be checked before it is finalised",
          "The .NET client is regenerated from the API, with commits on 52 separate days between 10 July and 8 October 2026"
        ],
        "weaknesses": [
          "An API key carries the whole access of the user who generated it. No per-key scopes were found",
          "No idempotency keys in the spec or guides, and 5 requests a second per key and IP address is the only documented limit",
          "No changelog, versioning policy or deprecation policy was found for the Payroll API",
          "Only 13 of 460 schema definitions in the Australian spec list required fields, and 711 of 728 operations document a 200 response and little else",
          "The developer forum's recent topics include spam, and several API questions from 2024 and 2025 show no replies"
        ],
        "agentNotes": [
          "Send the API key as the Basic auth username with a blank password, for example `curl -u {api_key}: https://api.yourpayroll.com.au/api/v2/user`",
          "Pick the Swagger file for the business's region (`swagger-au.json`, `swagger-nz.json`, `swagger-uk.json`, `swagger-sg.json`, `swagger-my.json`). Paths and models differ by region",
          "Stay under 5 requests a second per key and IP address. A 429 answered our test with `retry-after: 1`",
          "Page lists with `$skip` and `$top` (100 at most). Filter property names are capitalised, unlike the camelCase JSON",
          "Read `GET /api/v2/business/{businessId}/payrun/{payRunId}/warnings` before `POST .../finalise`. Finalise can lodge with the tax office and publish pay slips in the same call"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.4
          }
        ],
        "editorialScores": {
          "ergonomics": 53,
          "maintenance": 68,
          "payments": 10,
          "reliability": 65,
          "schema": 51,
          "security": 46,
          "transparency": 49
        },
        "provenanceScore": 71
      },
      "connect": {
        "install": "Install-Package KeyPayV2",
        "http": "curl -u {api_key}: https://api.yourpayroll.com.au/api/v2/user"
      },
      "letme": {
        "capability": "https://letme.dev/payroll.run",
        "tool": "https://letme.dev/employment-hero"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Employment Hero Pty Ltd",
        "domain": "employmenthero.com",
        "domainRegistered": "2012-05-02",
        "endpointOnVendorDomain": false,
        "terms": "https://employmenthero.com/legals/terms-conditions/",
        "privacy": "https://employmenthero.com/legals/privacy-policy/",
        "statusPage": "https://status.employmenthero.com",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The General Terms (effective 15 June 2026) name Employment Hero Pty Ltd and its affiliates, and define the EH Platform to include products reached through its APIs. They are the platform terms, and no separate API terms were found.",
          "The privacy policy is effective 3 June 2026 and points to a Data Processing Addendum effective 15 June 2026 at https://employmenthero.com/legals/privacy-policy/data-processing/.",
          "The API answers at api.yourpayroll.com.au and the documentation at api.keypay.com.au, both off employmenthero.com. RDAP for yourpayroll.com.au names the registrar only, so we could not confirm the registrant.",
          "https://employmenthero.com/.well-known/security.txt gives vuln@employmenthero.com, a policy link and an expiry of 31 December 2026.",
          "RDAP for employmenthero.com gives a registration date of 2012-05-02 and GoDaddy.com, LLC as registrar.",
          "No changelog for the Payroll API was found on the documentation site."
        ],
        "score": 71
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/employment-hero.json",
      "live": {
        "slug": "employment-hero",
        "vendorStatus": {
          "page": "https://status.employmenthero.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T04:41:01.142264956Z"
        },
        "githubStars": 6,
        "securityTxt": {
          "url": "https://employmenthero.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2026-12-31T15:59:00.000Z",
          "checkedAt": "2026-10-09T15:40:10.146824291Z"
        },
        "pages": [
          {
            "url": "https://employmenthero.com/legals/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:39:03.825238198Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e005f85d3aaf"
          },
          {
            "url": "https://employmenthero.com/legals/terms-conditions/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:39:06.180603587Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "7517cb7956cc"
          }
        ],
        "updatedAt": "2026-10-10T04:41:01.142264956Z"
      }
    },
    "answer": "PayFit scores 55.5 (C) on agent readiness against Employment Hero Payroll's 50.4 (D), and leads in 4 of 7 scored categories. Employment Hero Payroll leads on maintenance \u0026 community.",
    "b": {
      "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"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Employment Hero Pty Ltd",
        "b": "PayFit SAS",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Employment Hero's General Terms. The `KeyPayV2` .NET client is MIT",
        "b": "Proprietary service under PayFit's general terms of service",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-08",
        "b": "2026-07-23",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-06-15",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2026-06-15",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "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": "yes",
        "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": "6 stars",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "PayFit scores 55.5 (C) on agent readiness against Employment Hero Payroll's 50.4 (D), and leads in 4 of 7 scored categories. Employment Hero Payroll leads on maintenance \u0026 community.",
        "question": "Which is better for AI agents, Employment Hero Payroll or PayFit?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Employment Hero Payroll and PayFit need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Employment Hero Payroll. No hosted endpoint is listed for PayFit.",
        "question": "Can an agent call Employment Hero Payroll and PayFit without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Maintenance \u0026 community, 68 against 28"
        ],
        "also": null,
        "goodFor": "An agent acting for an employer or bureau already on Employment Hero Payroll in Australia, New Zealand, the United Kingdom, Singapore or Malaysia, and white label partners who create businesses through the brand endpoints.",
        "slug": "employment-hero",
        "watchFor": "An API key carries the whole access of the user who generated it. No per-key scopes were found"
      },
      {
        "aheadOn": [
          "Reliability, 79 against 65",
          "Schema \u0026 documentation, 78 against 51",
          "Security \u0026 auth, 51 against 46",
          "Transparency \u0026 trust, 70 against 60"
        ],
        "also": null,
        "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"
      }
    ],
    "job": {
      "capability": "payroll.employees",
      "name": "Payroll records"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-employment-hero.json",
        "title": "Argyle vs Employment Hero Payroll",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-employment-hero"
      },
      {
        "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/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-finch.json",
        "title": "Employment Hero Payroll vs Finch",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-finch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-paychex.json",
        "title": "Employment Hero Payroll vs Paychex",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-paychex"
      },
      {
        "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/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/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-worklio.json",
        "title": "PayFit vs Worklio",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-worklio"
      },
      {
        "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-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/employment-hero-vs-everee.json",
        "title": "Employment Hero Payroll vs Everee",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-everee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-gusto.json",
        "title": "Employment Hero Payroll vs Gusto",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-salsa.json",
        "title": "Employment Hero Payroll vs Salsa",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-salsa"
      },
      {
        "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/employment-hero-vs-zeal.json",
        "title": "Employment Hero Payroll vs Zeal",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-zeal"
      }
    ],
    "scores": [
      {
        "by": 14,
        "edge": "payfit",
        "employment-hero": 65,
        "key": "reliability",
        "name": "Reliability",
        "payfit": 79,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 27,
        "edge": "payfit",
        "employment-hero": 51,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "payfit": 78,
        "weight": 13
      },
      {
        "by": 2,
        "edge": "employment-hero",
        "employment-hero": 53,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "payfit": 51,
        "weight": 13
      },
      {
        "by": 5,
        "edge": "payfit",
        "employment-hero": 46,
        "key": "security",
        "name": "Security \u0026 auth",
        "payfit": 51,
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "employment-hero": 10,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "payfit": 10,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 40,
        "edge": "employment-hero",
        "employment-hero": 68,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "payfit": 28,
        "weight": 7
      },
      {
        "by": 10,
        "edge": "payfit",
        "employment-hero": 60,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "payfit": 70,
        "weight": 7
      }
    ],
    "summary": "PayFit scores 55.5 (C) on agent readiness against Employment Hero Payroll's 50.4 (D), and leads in 4 of 7 scored categories. Employment Hero Payroll leads on maintenance \u0026 community. Both do payroll records.",
    "verdicts": {
      "employment-hero": "Five public Swagger 2.0 files describe 660 to 821 operations per region, and any payroll user can generate an API key without a partner review. The key carries its user's whole access, no idempotency keys or API changelog were found, and the only official client is for .NET.",
      "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit",
    "json": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit.md",
    "slim": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit.min.md"
  },
  "markdown": "PayFit scores 55.5 (C) on agent readiness against Employment Hero Payroll's 50.4 (D), and leads in 4 of 7 scored categories. Employment Hero Payroll leads on maintenance \u0026 community. Both do payroll records.\n\n- Employment Hero Payroll: grade D, 50.4/100, rank #769 of 950. Markdown https://www.anchorterminal.com/tools/employment-hero.md · JSON https://www.anchorterminal.com/api/v1/tools/employment-hero.json\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- 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### Employment Hero Payroll (D)\n\nGood for: An agent acting for an employer or bureau already on Employment Hero Payroll in Australia, New Zealand, the United Kingdom, Singapore or Malaysia, and white label partners who create businesses through the brand endpoints.\n\nAhead on:\n- Maintenance \u0026 community, 68 against 28\n\nWatch for: An API key carries the whole access of the user who generated it. No per-key scopes were found\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 65\n- Schema \u0026 documentation, 78 against 51\n- Security \u0026 auth, 51 against 46\n- Transparency \u0026 trust, 70 against 60\n\nWatch for: No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports\n\n\n## Score by category\n\n| Category | Weight | Employment Hero Payroll | PayFit | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 65 | 79 | PayFit +14 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 51 | 78 | PayFit +27 |\n| Agent ergonomics | 13% (16.2 this run) | 53 | 51 | Employment Hero Payroll +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 46 | 51 | PayFit +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 10 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 68 | 28 | Employment Hero Payroll +40 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 60 | 70 | PayFit +10 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **50.4 · D** | **55.5 · C** | |\n\n## Facts side by side\n\n| Fact | Employment Hero Payroll | PayFit |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Employment Hero Pty Ltd | PayFit SAS |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Employment Hero's General Terms. The `KeyPayV2` .NET client is MIT | Proprietary service under PayFit's general terms of service |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-10-08 | 2026-07-23 |\n| Terms last updated | no date given | 2026-06-15 |\n| Privacy policy last updated | no date given | 2026-06-15 |\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 | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 6 stars | none |\n\n## Verdicts\n\n**Employment Hero Payroll.** Five public Swagger 2.0 files describe 660 to 821 operations per region, and any payroll user can generate an API key without a partner review. The key carries its user's whole access, no idempotency keys or API changelog were found, and the only official client is for .NET.\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## Before you call either\n\n### Employment Hero Payroll\n\n1. Send the API key as the Basic auth username with a blank password, for example `curl -u {api_key}: https://api.yourpayroll.com.au/api/v2/user`\n2. Pick the Swagger file for the business's region (`swagger-au.json`, `swagger-nz.json`, `swagger-uk.json`, `swagger-sg.json`, `swagger-my.json`). Paths and models differ by region\n3. Stay under 5 requests a second per key and IP address. A 429 answered our test with `retry-after: 1`\n4. Page lists with `$skip` and `$top` (100 at most). Filter property names are capitalised, unlike the camelCase JSON\n5. Read `GET /api/v2/business/{businessId}/payrun/{payRunId}/warnings` before `POST .../finalise`. Finalise can lodge with the tax office and publish pay slips in the same call\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## Questions\n\n### Which is better for AI agents, Employment Hero Payroll or PayFit?\n\nPayFit scores 55.5 (C) on agent readiness against Employment Hero Payroll's 50.4 (D), and leads in 4 of 7 scored categories. Employment Hero Payroll leads on maintenance \u0026 community.\n\n### Do Employment Hero Payroll and PayFit need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Employment Hero Payroll and PayFit without installing anything?\n\nNo hosted endpoint is listed for Employment Hero Payroll. No hosted endpoint is listed for PayFit.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/employment-hero-vs-payfit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/employment-hero-vs-payfit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"employment-hero\", \"b\": \"payfit\"}`. From a terminal: `anchor compare employment-hero payfit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/employment-hero.json and https://www.anchorterminal.com/api/v1/tools/payfit.json\n\n## Other comparisons with Employment Hero Payroll or PayFit\n\n- [Argyle vs Employment Hero Payroll](https://www.anchorterminal.com/compare/argyle-vs-employment-hero.md)\n- [Argyle vs PayFit](https://www.anchorterminal.com/compare/argyle-vs-payfit.md)\n- [Check vs PayFit](https://www.anchorterminal.com/compare/check-payroll-vs-payfit.md)\n- [Employment Hero Payroll vs Finch](https://www.anchorterminal.com/compare/employment-hero-vs-finch.md)\n- [Employment Hero Payroll vs Paychex](https://www.anchorterminal.com/compare/employment-hero-vs-paychex.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- [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- [PayFit vs Salsa](https://www.anchorterminal.com/compare/payfit-vs-salsa.md)\n- [PayFit vs Worklio](https://www.anchorterminal.com/compare/payfit-vs-worklio.md)\n- [PayFit vs Zeal](https://www.anchorterminal.com/compare/payfit-vs-zeal.md)\n- [Check vs Employment Hero Payroll](https://www.anchorterminal.com/compare/check-payroll-vs-employment-hero.md)\n- [Employment Hero Payroll vs Everee](https://www.anchorterminal.com/compare/employment-hero-vs-everee.md)\n- [Employment Hero Payroll vs Gusto](https://www.anchorterminal.com/compare/employment-hero-vs-gusto.md)\n- [Employment Hero Payroll vs Salsa](https://www.anchorterminal.com/compare/employment-hero-vs-salsa.md)\n- [Employment Hero Payroll vs Worklio](https://www.anchorterminal.com/compare/employment-hero-vs-worklio.md)\n- [Employment Hero Payroll vs Zeal](https://www.anchorterminal.com/compare/employment-hero-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": "Employment Hero Payroll vs PayFit",
        "url": ""
      }
    ],
    "description": "PayFit scores 55.5 (C) to Employment Hero Payroll's 50.4 (D) for payroll records. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Employment Hero Payroll D 50.4",
      "PayFit C 55.5",
      "scores"
    ],
    "h1": "Employment Hero Payroll vs PayFit",
    "image": "https://www.anchorterminal.com/assets/og/compare-employment-hero-vs-payfit.png",
    "path": "/compare/employment-hero-vs-payfit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Employment Hero Payroll vs PayFit for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 680
  },
  "version": 1
}
