HRIS · Beta
PayFit
API integration
Ship HRIS features without building the integration. Full PayFit API access via Proxy and 20+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Built for specific customer use cases. Issues are resolved quickly.
Talk to usUse Cases
Why integrate with PayFit
Common scenarios for SaaS companies building PayFit integrations for their customers.
Automate payroll journal posting for accounting platforms
Accounting and ERP products can pull PayFit's monthly accounting entries and payment files to auto-post journal entries into the general ledger, eliminating manual CSV exports at month-end close.
Sync new hires from ATS to payroll
Recruiting and onboarding tools can push signed candidates directly into PayFit as collaborators with attached contracts, removing duplicate data entry between hiring and payroll for French employers.
Trigger IT provisioning from contract events
IT asset management and identity tools can read PayFit contracts and collaborators to detect new hires and terminations, automatically provisioning laptops, SaaS accounts, and access on the correct start or end date.
Reconcile benefits and deductions with payroll
Insurtech, meal voucher, and perks platforms can update PayFit health insurance, provident fund, and meal voucher records so employee benefits and deductions flow accurately into each payroll run.
Centralize payslip and tax document access
Employee experience and finance apps can retrieve payslips, P45/P60/P11D documents, and auto-enrolment paperwork directly from PayFit, giving users a single place to access compliance documents.
What You Can Build
Ship these features with Truto + PayFit
Concrete product features your team can ship faster by leveraging Truto’s PayFit integration instead of building from scratch.
Automated payroll journal sync
Pull PayFit Accounting V2 entries each pay cycle and map account IDs to your customer's chart of accounts to post debits and credits automatically.
New hire push from ATS to PayFit
Attach a collaborator and create a French contract with job title and start date as soon as an offer is signed in your hiring product.
Contract-driven onboarding and offboarding
Listen to PayFit contracts and collaborator data to trigger downstream provisioning on hire and revoke access on termination dates.
Health insurance and provident fund affiliation
Update health insurance and provident fund records on PayFit contracts when an employee enrolls, changes plans, or requires a late-affiliation regularization.
Meal voucher and absence-based deductions
Combine PayFit absences with collaborator meal voucher records to calculate and write back accurate monthly voucher counts before payroll runs.
Employee document hub
Surface payslips, income tax documents, and auto-enrolment paperwork from PayFit inside your product for self-service employee access.
SuperAI
PayFit AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
create_a_pay_fit_billing_declaration
Create a billing declaration on a partner company in payfit. Returns an empty 204 response on success. Required: `monthOfApplication`. Supply either `quantityByProducts` or the deprecated `employeesByProducts` to report product usage.
list_all_pay_fit_payment_files
Get the payment file for a payfit company for a given month. Returns a binary file stream. Required: date (format: YYYYMM, e.g. 202212).
list_all_pay_fit_accountings
Get accounting data for a PayFit company for a given month. Returns a CSV-structured binary file containing journal entries with fields such as EcritureDate, ContractID, CompteNum, CompteLib, Debit, and Credit. Required: date.
list_all_pay_fit_accounting_v_2_s
List PayFit accounting v2 entries for a company for a given month (FR and UK only). Returns an array of accounting entries including operationDate, accountId, accountName, debit, credit, analyticCodes, employeeFullName, and contractId. Required: date (format YYYYMM, e.g. 202212).
list_all_pay_fit_payroll_status
Get the payroll status for a given pay period in Payfit. Returns: status (completed or not_completed), executionEndDate. Required: date (format YYYYMM).
list_all_pay_fit_income_taxes_documents
List all income tax documents (P45, P60, P11D) for a UK company in Payfit. Returns: documentId, createdAt, contractId, type, year, month, documentUrl. This endpoint is intended for UK companies only.
list_all_pay_fit_health_insurance_contracts
List all health insurance contracts for a PayFit company. Returns an array of contracts including idContrat, refContrat, affiliatedContractIds, modeCalculCotisation, tauxCotisationPatronale, and tauxCotisationSalariale.
list_all_pay_fit_provident_fund_contracts
List all Provident Fund contracts for a given company in PayFit. Returns: idContrat, refContrat, affiliatedContractIds, modeCalculCotisation, baseDeCotisation.
list_all_pay_fit_auto_enrolment_documents
List all auto enrolment documents for a UK company in Payfit. Returns an array of documents each including documentId, createdAt, contractId, year, month, and documentUrl.
get_single_pay_fit_document_by_id
Get a PayFit company document by id. Returns the document as a binary PDF file. Only works with document URLs provided by other PayFit API endpoints (e.g., auto-enrolment or income-taxes documents). Required: id.
get_single_pay_fit_companies_fr_by_id
Get basic information for a Payfit company including France-specific data. Returns: id, name, country, nbActiveContracts, siren, siret, address, city, postalCode, and healthInsuranceProrationMethod. Required: id.
create_a_pay_fit_health_insurance_setup_sheet
Create or update health insurance contracts in payfit for a French company by uploading setup sheet files sent to net-entreprises.fr. Returns a 201 response on success. Required: pdfFile, and xmlFile. Only available for French companies and specific partners.
list_all_pay_fit_contracts
List all PayFit contracts for a company. Returns an array of contract objects including contractId, status, jobName, startDate, and collaboratorId. Optionally include in-progress contracts via includeInProgressContracts.
get_single_pay_fit_contract_by_id
Get a single PayFit contract by id. Returns the full contract object including contractId, jobName, status, startDate, endDate, probationEndDate, collaboratorId, and time information fields. Required: id.
create_a_pay_fit_contract
Create a basic PayFit contract for a collaborator. Returns an empty 201 response; the contract becomes available after 2–5 minutes and must be completed by an admin in PayFit. Currently only available for France. Required: collaborator_id, jobTitle, and startDate.
list_all_pay_fit_contracts_times
List worked time for every contract in a payfit company for a given pay period. Returns: contractId, effectiveWorkedTime, payedWorkedTime, workTimeUnit per contract. Required: date (format YYYYMM). Only available for French companies.
list_all_pay_fit_contracts_frs
List all French-specific contracts for a PayFit company. Returns: contractId, status, startDate, jobName, collaboratorId, and French-specific fields such as natureContratDsn, idcc, and estCadreDirigeant.
get_single_pay_fit_contracts_fr_by_id
Get a single French-specific contract by id for a PayFit company. Returns the full contract object including contractId, status, startDate, jobName, collaboratorId, and French-specific fields such as natureContratDsn, idcc, and estCadreDirigeant. Required: id.
create_a_pay_fit_regularization
Request a health insurance regularization in PayFit for a French contract when an affiliation was applied too late. Returns an empty 204 response on success. Required: contract_id, healthInsuranceContractIds, effectiveDate.
update_a_pay_fit_health_insurance_by_id
Update the health insurance affiliation on a payfit employee contract. Returns an empty 204 response on success. Required: contract_id, and healthInsuranceContractIds.
update_a_pay_fit_provident_fund_by_id
Update the provident fund affiliation on a payfit employee contract by supplying one or more provident fund contract IDs. Returns an empty 204 response on success. Required: contract_id, providentFundContractIds.
list_all_pay_fit_absences
List absences for a PayFit company. Returns each absence's id, contractId, startDate, endDate, type, and status. By default only approved absences are returned; use the status filter to include others.
list_all_pay_fit_collaborators_meal_vouchers
List all collaborator meal vouchers for a given month in payfit. Returns: collaboratorId, vouchersCount, voucherAmount, voucherCompanyPartAmount, voucherEmployeePartAmount. Required: date (format YYYYMM). Only available for French companies.
get_single_pay_fit_collaborator_by_id
Get a single PayFit collaborator by id. Returns the collaborator object including id, firstName, lastName, emails, gender, birthDate, contracts, and terminationDate. Required: id.
get_single_pay_fit_payslip_by_id
Get a single PayFit collaborator payslip as a binary PDF file by id. Returns the payslip PDF document. Required: collaborator_id, contract_id, id.
list_all_pay_fit_payslips
List all payslips for a PayFit collaborator by collaborator_id. Returns an array of payslip objects including year, month, contractId, payslipId, and payslipUrl. Required: collaborator_id.
list_all_pay_fit_companies_collaborators
List collaborators belonging to a PayFit company. Returns an array of collaborator objects including id, firstName, lastName, emails, and contracts. Optionally filter by email (matched against contract emails only, not login email).
pay_fit_companies_collaborators_attach_collaborator
Create a new collaborator in a PayFit company. Returns the new collaborator's id. The collaborator is created without a contract and will not appear in the PayFit app until a contract is added via the create contract endpoint.
list_all_pay_fit_company
Get basic information about a PayFit company. Returns: id, name, country, nbActiveContracts.
Why Truto
Why use Truto’s MCP server for PayFit
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 500+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with PayFit in under an hour. No boilerplate, no maintenance burden.
Link your customer’s PayFit account
Use Truto’s frontend SDK to connect your customer’s PayFit account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call PayFit
Truto’s Proxy API is a 1-to-1 mapping of the PayFit API. You call us, we call PayFit, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate PayFit’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about PayFit on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How do end users connect their PayFit account through Truto?
Truto handles the full OAuth and credential flow for PayFit, so your users authenticate once through a hosted connect experience and your app receives a stable connection to call PayFit endpoints without managing tokens or refresh logic.
Which countries does the PayFit integration support?
PayFit operates primarily in France, the UK, and Spain. Several endpoints are region-specific — for example, contract creation and meal voucher, health insurance, provident fund, and regularization workflows are France-only, while income tax documents (P45, P60, P11D) and auto-enrolment documents are UK-only.
Can I create new employees and contracts programmatically?
Yes. You can attach a collaborator to a company and create a contract via the PayFit endpoints exposed in Truto. Note that contract creation is currently limited to French entities and typically requires a PayFit admin to finalize the contract inside PayFit before it becomes active.
How do I retrieve payslips and payroll documents?
You can list payslips and fetch a single payslip by ID to retrieve the document, and use the document endpoint to download files. For UK customers, income tax documents and auto-enrolment paperwork are available through dedicated list endpoints.
What accounting data can I extract for general ledger automation?
Truto exposes both the legacy accounting endpoint and the Accounting V2 endpoint (FR/UK), which returns structured journal entries with account IDs, debits, credits, and analytic codes. You can also pull payment file streams used to execute bulk payroll transfers.
How fresh is the data and how should I sync it?
PayFit's API is poll-based, so Truto pulls data on the schedule you configure. For employee and contract changes, daily polling is typical; for payroll, accounting, and payment files, syncing aligned to your customer's monthly pay cycle is the most efficient pattern.
From the Blog
PayFit integration guides
Deep dives, architecture guides, and practical tutorials for building PayFit integrations.
PayFit
Get PayFit integrated into your app
Our team understands what it takes to make a PayFit integration successful. A short, crisp 30 minute call with folks who understand the problem.
Talk to us