如何通过Xero API为DRAFT状态PayRun创建Payslip的问题咨询
Xero API创建Payslip的实操方案
核心逻辑澄清
Xero Payroll AU API的公开文档存在描述歧义,所谓「Payslips新增接口」并未纳入公开OpenAPI规范,但实际可按以下两种场景操作:
场景1:定时触发的PayRun未自动生成Payslip
按以下参数校验你的PayRun创建请求即可触发自动生成:
- 创建PayRun时
PayRunType必须设为SCHEDULED - 必须传参
"AutoPay": true - 确保PayRun覆盖周期内的所有员工已绑定有效Pay Template、对应考勤单已完成审批
满足以上条件后,Draft状态PayRun创建后1~2分钟会自动生成所有关联员工的Payslip,你可以调用GET /PayRuns/{payRunId}/Payslips获取生成的Payslip ID,再通过PUT /Payslips/{payslipId}调整收入、扣除项等自定义内容。
场景2:非定时(Manual)PayRun手动创建Payslip
使用未公开但官方验证可用的端点POST /PayRuns/{payRunId}/Payslips即可创建,请求体结构和PUT /Payslips的更新结构完全一致,核心参数示例:
{ "EmployeeID": "你的员工ID", "EarningsLines": [ { "EarningsTypeID": "收入类型ID", "NumberOfUnits": 40, "RatePerUnit": 25 } ], "DeductionLines": [], "SuperLines": [] }
注意事项
- 所有Payslip的创建、修改操作仅支持DRAFT状态的PayRun,PayRun提交后无法操作
- Payslip生成是异步操作,调用接口后建议等待30秒再查询结果,不要实时轮询
内容的提问来源于stack exchange,提问作者MustDie1Bit
相关产品推荐
相关产品推荐

