v1

latestOpenAPI 3.1.02026-07-242735131.1 MB
Pay Items

Bulk Create Pay Items

Bulk creates pay items for employments. Supports up to 500 items per request. Integration-specific fields (shift code, currency, pay amount, etc.) go in the provider_data object. Only Global Payroll employments are supported. Non-GP employments are returned as employment_not_global_payroll.

Scopes

CategoryRead only ScopeWrite only Scope (read access implicit)
Manage payroll runs (payroll)-Manage pay items (pay_item:write)
post/v1/pay-items/bulk

Request body

Example request

{
  "pay_items": [
    {
      "amount": 7200,
      "code": "overtime",
      "effective_date": "2026-03-11",
      "employment_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "provider_data": {
        "adjustment_effective_date": "2026-03-15",
        "hourly_rate": 2550,
        "hourly_rate_currency_code": "SGD",
        "is_deduction": false,
        "pay_rate": 1.5,
        "payout_amount": 1500000,
        "payout_currency_code": "SGD",
        "shift_code": "DAY",
        "work_day_duration": 28800
      }
    }
  ]
}

Response

Success

Example response

{
  "data": {
    "failures": [
      {
        "error": "not_found",
        "row_number": 0
      }
    ],
    "successes": [
      {
        "pay_item": {
          "amount": 7200,
          "code": "overtime",
          "effective_date": "2026-03-11",
          "employment_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
          "provider_data": {
            "adjustment_effective_date": "2026-03-15",
            "hourly_rate": 2550,
            "hourly_rate_currency_code": "SGD",
            "is_deduction": false,
            "pay_rate": 1.5,
            "payout_amount": 1500000,
            "payout_currency_code": "SGD",
            "shift_code": "DAY",
            "work_day_duration": 28800
          }
        },
        "row_number": 0
      }
    ]
  }
}