Web Services and SuiteTalk
NetSuite Unknown
2026-07-24

Paycheck Journal Record Exposed to REST Web Services

The paycheckjournal record is now available via SuiteTalk REST web services, enabling programmatic creation, retrieval, and deletion of paycheck journals. Tax-related fields require SuiteTax; legacy tax is not supported.

Affects:REST Web ServicesPayrollSuiteTax

What changed

NetSuite has exposed the paycheck journal record to REST web services under the record ID paycheckjournal. The endpoint is:

/services/rest/record/v1/paycheckJournal

This is a top-level record (not a subrecord) and carries five subrecords:

  • PaycheckJournalCompanyContribution
  • PaycheckJournalCompanyTax
  • PaycheckJournalDeduction
  • PaycheckJournalEarning
  • PaycheckJournalEmployeeTax

Tax field limitations

Two body fields are explicitly not exposed to REST:

  • companytax
  • employeetax

REST web services do not support legacy tax features for this record. You must have the SuiteTax feature enabled to work with taxation through REST. If your account still runs on legacy tax, these endpoints will not surface tax data.

Available actions

Standard record actions apply: create (POST), read (GET), update (PATCH), and delete. The UI also supports Customize Form, New Body Field, New Column Field, Reset, Save, and Save and New.

Code samples

Create a paycheck journal (POST):

POST /services/rest/record/v1/paycheckJournal

Minimum payload requires employee.id, account.id, and at least one earning.items[] entry with amount and payrollItem.id.

Clear earnings on an existing journal (PATCH):

PATCH /services/rest/record/v1/paycheckJournal/{id} with "earning": { "items": [] } — note this replaces the entire sublist, effectively deleting all earning lines.

Retrieve a paycheck journal (GET):

GET /services/rest/record/v1/paycheckJournal/{id}

Prerequisites

Both of the following features must be enabled in your account before this record is available via REST:

  1. Payroll feature
  2. Payroll Journal feature

If either is disabled, REST calls to /services/rest/record/v1/paycheckJournal will fail.

What to do

  1. Confirm that both the Payroll and Payroll Journal features are enabled at Setup > Company > Enable Features.
  2. If your account uses legacy tax and you need tax data on paycheck journals via REST, plan a migration to SuiteTax. The companytax and employeetax fields are not available through REST under legacy tax.
  3. Review the REST API Browser for the full field schema of paycheckjournal — the source documentation does not enumerate all body fields.
  4. If you are patching the earning sublist, be aware that sending an empty items array wipes all earning lines. Use replace-mode semantics: always include the lines you want to keep.
  5. Update any integration middleware or external payroll sync workflows that previously relied on SOAP/SuiteTalk or CSV imports to evaluate whether the REST endpoint is a better fit.

Open questions

The source documentation does not specify which NetSuite release introduced this record to REST, nor does it clarify whether the subrecords (PaycheckJournalCompanyContribution, PaycheckJournalDeduction, etc.) are independently addressable via REST sub-resource URLs (e.g., /paycheckJournal/{id}/earning/{lineId}) or only manageable through the parent record's PATCH payload. Verify both in the REST API Browser for your account's version.