Reports

Generate payroll, tax, and labor reports.

Report generation is asynchronous. Create a job, then wait for the report.ready webhook or poll the job. Download URLs are signed and expire after one hour, so request a fresh one rather than storing the link.

GET /v1/reports

Generate payroll reports

Starts a report job and returns immediately. Reports read from a replica that lags production slightly, so a run approved seconds earlier may not appear yet.

Parameters

Name Type Required Description
company_id string Yes The company to report on.
type string Yes payroll_register, tax_liability, labor_distribution, employee_census, or general_ledger.
start_date string Yes ISO 8601 date, inclusive.
end_date string Yes ISO 8601 date, inclusive.
format string No csv, xlsx, json, or pdf. Defaults to csv.
group_by string No department, location, or project.

Request

curl https://api.payflo.dev/v1/reports \
  -H "Authorization: Bearer $PAYFLO_API_KEY" \
  -G -d company_id=cmp_8f2a \
  -d type=payroll_register \
  -d start_date=2025-01-01 \
  -d end_date=2025-03-31 \
  -d format=csv

Response

{
  "id": "rpt_2d40",
  "object": "report",
  "status": "pending",
  "type": "payroll_register",
  "estimated_seconds": 12,
  "download_url": null
}