If you sync data into NetSuite with Census, theres one error message that will waste your afternoon if you dont know the trick. The sync fails and the logs say something like:
Passed nil into T.must
Helpful, right? Almost every time we have seen this, the culprit is a sublist field. NetSuite sublist fields (the line-level ones on transactions) have to be sent as arrays of objects, and the field names are case-sensitive against the API schema. Not the NetSuite UI labels. Not close enough. Exact match.
The second gotcha: custom fields go by ScriptID, never the display label. custcol_example_field works; "Example Field" blows up. And the field has to exist on the exact sublist youre syncing to, itemList, lineList, applyList. A field on the body of the transaction does not count.
Quick checklist when a sync dies:
- Open the NetSuite Schema Browser and confirm the field exists on the right sublist.
- Check case character by character against the schema.
- Custom field? Use the ScriptID. And confirm it was created as a Transaction Line Field, not a body field.
- Still stuck? A recently added field may not be in the API yet. Wait, re-sync.
The Passed nil into T.must error is Census telling you it tried to resolve a field and got nothing back. Nine times out of ten it means the mapping points at something that isnt there.
Full rundown, with the official troubleshooting source: https://vectle.com/skills/skl_1AUA9R0EQWQte4DQKyMpmw
Top comments (0)