Paylocity 数据 API:薪资、打卡与预支工资
Paylocity 是 Paylocity 人力资本管理平台的移动端,服务于美国的计时员工、主管与薪资管理员。员工打卡上下班、查看即将到来的班次、核对薪资历史,并在发薪日前预支已赚工资;薪资团队跟踪进行中的发薪批次及每批所需现金。它是该公司薪资、工时与排班系统的日常入口。
作为数据源,应用把这份劳动力记录开放为可调用数据:带签名 timestamp 与 geolocation 的打卡、覆盖 gross、net、deductions 与 taxes 的发薪汇总、含 accountNumberLastFour 与 totalEft 的按银行备付金额、带 position 与 costCenters 的已排班次、含 paymentFeeAmount 的预支打款,以及年累计退休缴款。openData Studio 将这一层转化为开放数据,供资金、劳动力管理与福利集成核验发薪资金、对账工时与排班,并为预支打款定价。
Paylocity 是美国人力资本管理平台 Paylocity 的员工与经理端:员工用它打卡上下班、查看班次、查阅薪资历史并申请预支薪资;薪资管理员则核对进行中的发薪批次及所需备付现金。这些界面背后是一套劳动力数据集:带签名时间戳与地理位置的打卡、含应发实发与税款拆分的发薪汇总、按银行的备付金额、排班班次与退休缴款。财务、劳动力与福利工具基于它核验发薪资金、对账打卡与排班,并为预支打款报价。
应用截图
API 端点一览
以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。
公司登录(jwt 与网关令牌)
POST
/v1/auth/loginosint将员工或薪资管理员登录到一家公司,返回 jwt、gatewayToken、refreshToken、sessionId 以及后续薪资、打卡与排班调用所绑定的 company 与 user 信封。
认证方式: 公司代码加 userName/password,或带 codeChallenge、codeChallengeMethod 与 codeChallengeVerifier 的 PKCE code。无需事先 Bearer。返回的 jwt 作为 Authorization: Bearer 用于后续调用;gatewayToken 保存在会话中。
- jwt
- gatewayToken
- refreshToken
- sessionId
- accessTokenExpiration
- company
- user
- companyCode
- employeeId
- identityKey
POST /v1/auth/login HTTP/1.1 Content-Type: application/json { "mode": "password", "company": "B1234", "userName": "jdoe", "password": "******" }{ "data": { "jwt": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...", "gatewayToken": "gwt-8f21c4a0", "refreshToken": "rt-c91e2b77", "sessionId": "sess-10432", "accessTokenExpiration": "2026-09-29T18:40:00Z", "company": {"companyCode": "B1234", "companyName": "Acme Manufacturing", "doingBusinessAs": "Acme", "companySet": "prod-us"}, "user": {"email": "[email protected]", "employeeId": "E-10432", "firstName": "Jane", "lastName": "Doe", "userName": "jdoe", "isSupervisor": false, "identityKey": "idk-77a1"} }, "errors": [] }依据应用的登录与公司选择流程重构与每次薪资、打卡及排班调用所绑定的会话信封一致
刷新登录令牌
POST
/v1/auth/token/refreshopendata轮换 jwt、gatewayToken 与 refreshToken,使已登录会话在 accessTokenExpiration 窗口内无需再次输入密码。
认证方式: 请求体携带 POST /v1/auth/login 返回的 refreshToken。用于在不再输入密码的情况下替换过期 jwt。
- jwt
- gatewayToken
- refreshToken
- sessionId
- accessTokenExpiration
POST /v1/auth/token/refresh HTTP/1.1 Content-Type: application/json { "refreshToken": "rt-c91e2b77", "company": "B1234" }{ "data": { "jwt": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...", "gatewayToken": "gwt-8f21c4a0", "refreshToken": "rt-d02f3c88", "sessionId": "sess-10432", "accessTokenExpiration": "2026-09-29T22:40:00Z" }, "errors": [] }依据应用的静默会话续期流程重构
用户与公司上下文
GET
/v1/accounts/{companyId}/contextosint重新加载已登录的公司与用户信封——companyCode、employeeId、主管与离职标记、功能开关——用于在令牌刷新后控制薪资、打卡与预支薪资界面。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。companyId 为登录信封中的 companyCode。
- company
- user
- toggles
- myPaylocity
- companyCode
- employeeId
- isSupervisor
- isTerminated
- payType
- personId
GET /v1/accounts/B1234/context HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "data": { "company": {"companyCode": "B1234", "companyName": "Acme Manufacturing", "doingBusinessAs": "Acme", "companySet": "prod-us"}, "user": {"email": "[email protected]", "employeeId": "E-10432", "firstName": "Jane", "lastName": "Doe", "userName": "jdoe", "isSupervisor": false, "isTerminated": false, "payType": "hourly", "personId": "P-88120"}, "toggles": [{"name": "earnedWageAccess", "enabled": true}], "myPaylocity": {"enabled": true} } }依据登录与令牌刷新后运行的账户初始化流程重构
首页仪表盘
GET
/v1/accounts/{companyId}/dashboardopendata返回已登录首页:快捷操作芯片、最近打卡状态、待办、请假、W-2 申报、退休与团队组件。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。
- quickActions
- punch
- tasks
- timeOff
- w2TaxFiling
- retirement
- socialCarousel
- calendar
- myTeam
GET /v1/accounts/B1234/dashboard HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "data": { "quickActions": {"chips": ["punch", "payHistory", "timeOff"]}, "punch": {"latestPunchType": "in", "canPunch": true}, "tasks": {"count": 2}, "timeOff": {"upcoming": []}, "w2TaxFiling": {"available": true}, "retirement": {"hasProfile": true}, "socialCarousel": {"items": []} } }依据首页的组件信息流重构
进行中的发薪批次
GET
/v1/accounts/{companyId}/payroll-runsopenfinance列出公司进行中的发薪批次——发薪日、周期起止、非周期标记、发薪日程——对应薪资首页翻页列表。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。companyId 为已登录的 companyCode。
- id
- checkDate
- periodBegin
- periodEnd
- isOffCycle
- payScheduleId
- payFrequency
GET /v1/accounts/B1234/payroll-runs HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "items": [ { "id": "PR-2026-09-25", "checkDate": "2026-09-25", "periodBegin": "2026-09-08", "periodEnd": "2026-09-21", "isOffCycle": false, "payScheduleId": "PS-WEEKLY", "payFrequency": "weekly" } ] }依据薪资首页的批次列表重构
发薪批次汇总
GET
/v1/accounts/{companyId}/payroll-runs/{payrollId}/totalsopenfinance返回一次发薪的汇总:批次与员工数、工时、纸质支票与直接存款支票数,以及现金金额(gross、net、earnings、deductions、taxes)。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。
- payrollId
- batchCount
- employeeCount
- hours
- checkCounts
- directDeposit
- live
- cashAmounts
- gross
- net
- earnings
- deductions
- taxes
GET /v1/accounts/B1234/payroll-runs/PR-2026-09-25/totals HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "payrollId": "PR-2026-09-25", "batchCount": 3, "employeeCount": 412, "hours": 16480.50, "checkCounts": {"directDeposit": 390, "live": 22}, "cashAmounts": {"gross": 1854320.11, "net": 1422100.44, "earnings": 1854320.11, "deductions": 210400.20, "taxes": 221819.47} }依据发薪批次详情页的汇总头部重构
发薪现金需求
GET
/v1/accounts/{companyId}/payroll-runs/{payrollId}/fundingopenbanking展示公司为一次发薪需备付的现金:按银行的 EFT 与支票合计(账号后四位),以及直接存款、税款、机构和薪资本身的负债分桶。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。需薪资管理员会话。
- bankingSummary
- accountNumberLastFour
- totalEft
- totalChecks
- liabilities
- directDeposit
- tax
- agency
- payroll
GET /v1/accounts/B1234/payroll-runs/PR-2026-09-25/funding HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "bankingSummary": [ { "name": "Operating - Wells Fargo", "accountNumberLastFour": "4421", "totalEft": 1385400.12, "totalChecks": 36700.32 } ], "liabilities": { "directDeposit": {"amount": 1385400.12}, "tax": {"amount": 221819.47}, "agency": {"amount": 18400.00}, "payroll": {"amount": 36700.32} } }依据管理员在放行发薪前查看的资金核对界面重构
提交打卡
POST
/v1/accounts/{companyId}/employees/{employeeId}/clock-eventsopendata为已登录员工记录一次上班或下班打卡,含签名时间戳、打卡类型、可选备注、地理位置与成本中心 id——即打卡按钮的写入侧。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。employeeId 为已登录员工。
- timestamp
- type
- note
- isManual
- source
- geolocation
- costCenterIds
- punchId
POST /v1/accounts/B1234/employees/E-10432/clock-events HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... Content-Type: application/json { "timestamp": {"value": "2026-09-29T12:01:04Z", "signature": "sig-aa12"}, "type": "in", "note": "", "isManual": false, "source": "mobile", "geolocation": {"latitude": 41.8781, "longitude": -87.6298}, "costCenterIds": ["CC-OPS"] }{ "punchId": "PCH-99120", "timestamp": "2026-09-29T12:01:04Z", "type": "in", "isManual": false, "source": "mobile" }依据移动端打卡按钮的写入流程重构
员工发薪周期
GET
/v1/accounts/{companyId}/employees/{employeeId}/work-periodsopendata列出员工的发薪周期窗口(startDate、endDate),工时表与打卡历史按此翻页。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。
- startDate
- endDate
GET /v1/accounts/B1234/employees/E-10432/work-periods HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "items": [ {"startDate": "2026-09-08T00:00:00Z", "endDate": "2026-09-21T23:59:59Z"}, {"startDate": "2026-09-22T00:00:00Z", "endDate": "2026-10-05T23:59:59Z"} ] }依据工时表与打卡历史的翻页逻辑重构
我的排班班次
GET
/v1/accounts/{companyId}/employees/{employeeId}/rosteropendata返回已登录员工的已排班次——id、类型、时长、日期区间、职位与成本中心——对应「我的排班」界面。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。
- items
- id
- type
- duration
- date
- position
- costCenters
- status
GET /v1/accounts/B1234/employees/E-10432/roster HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "items": [ { "id": "SH-44120", "type": "shift", "duration": {"hours": 8, "minutes": 0}, "date": {"start": "2026-09-29T13:00:00Z", "end": "2026-09-29T21:00:00Z"}, "position": {"name": "Line Operator"}, "costCenters": [{"id": "CC-OPS", "name": "Operations"}], "status": "scheduled" } ] }依据「我的排班」界面重构
预支薪资付款
GET
/v1/accounts/{companyId}/employees/{employeeId}/wage-advancesopenfinance列出员工本期已发生的预支薪资转账——金额、手续费、状态、到账时间以及将从工资中扣除的发薪日。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。受账户上下文上 earnedWageAccess 开关控制。
- paymentId
- paymentDateTimeUtc
- paymentStatus
- paymentAmount
- transferFeeAmount
- payrollDeductionDate
- transferredDateTimeUtc
GET /v1/accounts/B1234/employees/E-10432/wage-advances HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "items": [ { "paymentId": "EWA-70012", "paymentDateTimeUtc": "2026-09-24T16:12:00Z", "paymentStatus": "completed", "paymentAmount": 150.00, "transferFeeAmount": 2.99, "payrollDeductionDate": "2026-09-25T00:00:00Z", "transferredDateTimeUtc": "2026-09-24T16:40:00Z" } ] }依据预支薪资历史列表重构
预支薪资付款预览
POST
/v1/accounts/{companyId}/employees/{employeeId}/wage-advance-quotesopenfinance按金额、到账速度与已保存的收款方式报价预支薪资的手续费与合计,供员工确认打款前查看。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。
- paymentMethodId
- paymentTransferSpeed
- paymentAmount
- paymentPreviewId
- paymentFeeAmount
- totalPaymentAmount
- transferByDate
- paymentOption
POST /v1/accounts/B1234/employees/E-10432/wage-advance-quotes HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... Content-Type: application/json { "paymentMethodId": 4412, "paymentTransferSpeed": "instant", "paymentAmount": 125.00 }{ "paymentPreviewId": 88021, "paymentAmount": 125.00, "paymentFeeAmount": 2.99, "totalPaymentAmount": 127.99, "transferByDate": "2026-09-29T18:00:00Z", "paymentOption": {"code": "instant"} }依据预支薪资确认页的手续费报价步骤重构
退休缴款资料
GET
/v1/accounts/{companyId}/assignments/{assignmentId}/retirement-summaryopenfinance从薪资历史读取员工的退休缴款资料——税前与 Roth 计划以及年累计员工与雇主缴款——对应退休卡片。
认证方式: Authorization: Bearer <jwt>,来自 POST /v1/auth/login。assignmentId 为该员工的薪资任职记录。
- companyId
- assignmentId
- currency
- preTax
- roth
- yearToDateContributions
GET /v1/accounts/B1234/assignments/AS-10432/retirement-summary HTTP/1.1 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...{ "companyId": "B1234", "assignmentId": "AS-10432", "currency": "USD", "preTax": [{"planName": "401(k)", "percent": 6.0}], "roth": [{"planName": "Roth 401(k)", "percent": 2.0}], "yearToDateContributions": {"employee": 4200.00, "employer": 2100.00} }依据薪资历史中的退休卡片重构
数据类别
- 登录会话
- 用户资料
- 公司上下文
- 首页仪表盘
- 发薪批次
- 发薪现金需求
- 打卡记录
- 发薪周期
- 工作排班
- 预支薪资
- 退休缴款
数据使用场景与案例
发薪备付现金核对
资金机器人以薪资管理员身份登录,在 GET /v1/accounts/{companyId}/payroll-runs 列出进行中的批次,再读取 GET /v1/accounts/{companyId}/payroll-runs/{payrollId}/funding 中的 accountNumberLastFour、totalEft 与税款负债,然后才放行 ACH 文件。
打卡与排班对账
劳动力系统把打卡提交到 POST /v1/accounts/{companyId}/employees/{employeeId}/clock-events,并与 GET /v1/accounts/{companyId}/employees/{employeeId}/roster(duration、position、costCenters)对照,周期窗口来自 GET /v1/accounts/{companyId}/employees/{employeeId}/work-periods。
预支薪资打款报价
员工确认提前支取前,客户端把 paymentAmount 与 paymentTransferSpeed POST 到 /v1/accounts/{companyId}/employees/{employeeId}/wage-advance-quotes,展示 paymentFeeAmount 与 totalPaymentAmount;历史转账来自 GET .../wage-advances。
退休年累计卡片
福利界面调用 GET /v1/accounts/{companyId}/assignments/{assignmentId}/retirement-summary 读取 preTax、roth 与 yearToDateContributions,并与 GET /v1/accounts/{companyId}/dashboard 的退休组件并排展示。
常见问题
Paylocity 如何鉴权 API 调用?
POST /v1/auth/login 接受 company、userName 与 password(或 PKCE code),返回 jwt、gatewayToken、refreshToken 与 sessionId。后续调用发送 Authorization: Bearer <jwt>。POST /v1/auth/token/refresh 轮换令牌;GET /v1/accounts/{companyId}/context 重新加载公司、用户与功能开关。
能看到哪些薪资金额?
GET /v1/accounts/{companyId}/payroll-runs 列出进行中的批次(checkDate、periodBegin、periodEnd)。GET .../payroll-runs/{payrollId}/totals 返回 gross、net、earnings、deductions、taxes 以及纸质支票与直接存款支票数。GET /v1/accounts/{companyId}/payroll-runs/{payrollId}/funding 补充每家银行的 totalEft、totalChecks、accountNumberLastFour 以及税款与直接存款负债。
员工能打卡并查看排班吗?
可以。POST /v1/accounts/{companyId}/employees/{employeeId}/clock-events 用签名时间戳、类型与地理位置记录打卡。发薪周期来自 GET /v1/accounts/{companyId}/employees/{employeeId}/work-periods。已排班次是 GET /v1/accounts/{companyId}/employees/{employeeId}/roster。
与 Paylocity 相似的应用
- ADP Mobile Solutions — ADP 的员工端应用,配套其 Workforce Now 人力资本管理套件,覆盖薪资、HR、工时与人才管理,面向中型企业,在跨州税务与合规能力上与 Paylocity 直接竞争。
- Workday — Workday 是面向大型企业的套件,把人力、薪资与财务数据整合在同一系统中,通常适用于千人以上规模的组织。
- UKG Pro — UKG 是围绕排班与劳动合规打造的薪资与人力平台,主要面向医疗、零售、酒店餐饮与制造等行业的中型企业。
- Paychex Flex — Paychex Flex 为美国小企业打包提供薪资、HR 与福利服务,公开定价为每月 39 美元起、每位员工另加 5 美元。
- Gusto — Gusto 是面向美国小企业的薪资平台,价格公开且不限发薪次数,适合约 2 至 200 人的公司。
- Paycom — Paycom 是面向中大型企业的单数据库 HCM 平台,其 Beti 功能让员工在发薪前自行核对工资单。
- Rippling — Rippling 把 HR、IT 与薪资整合到同一系统,面向注重自动化的科技公司,可自动完成新员工应用账号开通等流程。
相关主题
- paylocity api
- 薪资接口
- 打卡
- 预支薪资
- 发薪现金需求
- 员工排班
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业