Sometimes, errors in NetSuite are not very clear and may mislead you in the wrong direction.
Today we are going to discuss this error message:
Error Code: USER_ERROR
Error Message: Customer is XXX days overdue.
Recently, I encountered this error when I tried to update a transaction record. If I update the body fields, the error won’t block me. But if I update the item fields, the error shows up and PREVENTS me from saving the record.
As the error message indicates, it means the customer is overdue and may be on hold status.
To check this, go to the customer record and verify whether the customer has a credit hold. If you are doing data migration between environments, you can temporarily disable the credit hold and turn it back on after you finish the update.
You can also use a saved search to check the credit hold status of customers.
If you decide to turn off the credit hold for a specific customer, you can do so with the following steps: 1. Go to the customer record. 2. Check the Financial subtab. 3. Update the field Hold (fieldId: creditholdoverride) to OFF. Possible values are: ON, OFF, AUTO. If it is already OFF and you are still blocked, then this may not be the cause of the error. 4. Save the record.
I know some people may use SuiteScript to update the record, but if your record encounters the above “overdue” issue, you must ensure your instance is reloaded after you update the customer record. For example:
let tranRec = record.load({type: record.Type.SALES_ORDER, id: salesOrderId});
const customerRec = record.load({type: record.Type.CUSTOMER, id: tranRec.getValue({fieldId: 'entity'})});
customerRec.setValue({fieldId: 'creditholdoverride', value: 'OFF'});
customerRec.save();
// You should reload the transaction record again after updating the customer record!
tranRec = record.load({type: record.Type.SALES_ORDER, id: salesOrderId});
.
.
.
If you do not reload the tranRec and instead use the old instance, the error will still block you even though the customer record field was updated.
Another good practice is to update all the customer records first, and then update the transaction records. This way, you don’t need to change the customer record every time you update a transaction record. After you finish all updates, you can revert the credit hold settings to their original state.
Hope this helps when you encounter the same issue.
About Us
Concentrus is a leading provider of innovative cloud-based enterprise resource planning (ERP) solutions, including NetSuite. Our team of NetSuite experts offers a range of services, including NetSuite price analysis, NetSuite training, and NetSuite integration services.
Our goal is to help businesses of all sizes maximize their investment in NetSuite by providing expert NetSuite cost optimization and implementation strategies. With years of experience as a NetSuite partner, our NetSuite administrators and NetSuite consultants are well equipped to help businesses of all sizes with their NetSuite consulting needs.
Whether you're looking for a NetSuite consultant to help with your NetSuite implementation or you need ongoing NetSuite support, Concentrus is here to help.
Read About Our Implementation Methodology
Want more NetSuite Tips and Tricks? Check out our Short & 'Suite videos