Understanding Pay Run Posting Errors

Invalid Record Ref

An error message has been returned in the payroll history containing the message INVALID_KEY_OR_REF. The error denotes that the system was unable to complete its processing action. The following are examples of common invalid record reference errors

INVALID_KEY_OR_REF Invalid custrecord_pr_psd_payee reference key 1
// the payee (supplier / vendor) with id 1 is inactive, or not configured for the subsidiary

INVALID_KEY_OR_REF Invalid custrecord_pr_psd_department reference key 1
// the department with id 1 is inactive

INVALID_KEY_OR_REF Invalid employee reference key 2457
// the employee with id 2457 is most likely inactive or has a historic termination date, or cannot be set as the field is filtered.

INVALID_KEY_OR_REF Invalid casetaskevent reference key 6241 for customer 5273
// the task with id 6241 set on a time record is not a task of the project 5273

INVALID_KEY_OR_REF Invalid custcol_pr_pcst reference key 21
// the pay component sub type with internalid 21 is inactive or does not have show on time entry ticked

INVALID_KEY_OR_REF Invalid class reference key 11 for subsidiary 2
// the class with internalid 11 cannot be set for an employee in subsidiary with internalid 2

INVALID_KEY_OR_REF Invalid Entity reference key 317 for subsidiary 12
// the Vendor/Supplier with internalid 317 cannot be set on a journal in subsidiary with internalid 12

The most common of these errors relates to an incorrect Super Fund Vendor/Supplier. Steps to fix below. 

INVALID_KEY_OR_REF Invalid Entity reference key 317 for subsidiary 12
// the Vendor/Supplier with internalid 317 cannot be set on a journal in subsidiary with internalid 12

NB: Example only. Your internal id's will be unique to your error.

The error is saying you have invalid entity (normally a Super vendor/supplier) for that company.

It is a vendor/supplier with internal id 317.

So you need to go to Payroll Admin>Manage Super Funds>PR-Payroll Vendor Search: Results

In the list you should see one with internal id 317. Tick "show inactives" if you don't see it.  

Then you need to find and correct.

1. The payslip detail already created - go to Payroll Admin>FAQ and Troubleshooting>PR-Classification Payslip Detail Search: Results 

  • Filter by the pay run id with the error
  • Filter by the payee with internal id 317
  • Edit the lines and change the payee to the correct payee for that subsidiary. Save.
  • Then you can re-post the pay run.

2. You also need to fix any pay components or employee super funds on the employee record with that Vendor so that it doesn't happen in a future pay run.


NetSuite returns an invalid record reference error when an attempt is made to set a field to a value that is no longer valid. The field value may not be valid for a number of reasons:

  • The value has been made inactive
  • The value cannot be set as a constraint is set on the field (typically this is for Multi Subsidiary accounts)

The most common scenario for this is when a department, class, location or account is set as inactive by an administrator. The action of setting the location as inactive does not clear or update fields that may already reference this value on existing records, and the constraint is only checked when a record is saved (on create or update).

The most common places for this to happen are:

  • Posting Payrun when the journal is creating setting accounts
  • Process Payslip where employee pay component values are used to create payslip details


To fix the error you will need to either a) re-enable the value so it can be set into the field  b) update the records that the inactive field values are being reference from. To diagnose

USER_ERROR Please enter value(s)

This error will occur when a mandatory field for posting such as Department, Class or Location has not been included in a payslip detail.

To resolve this error you will need to locate the payslip details within the pay run that are missing this information. You can use the Posting Info Search for this by setting the Pay Run in the filters and selecting "-None-" for either Department, Class or Location to see which payslip details do not have the field set.

You can then edit these payslip details and set the required fields to have the correct values, once done rollback the pay run to the previous stage and you will then be able to post and pay the pay run.

Netsuite Permissions

Depending on how your account and roles are configured you may not have access, to re-enable a value for department, class or location. If this is the case you will need to talk to your Account Administrator to update the values on your behalf