The company will not save / connection test fails
| Check | Detail |
|---|---|
| Account ID | Copy from Setup > Company > Company Information. Sandbox IDs end with -sb1 or _SB1. |
| Client ID | From Setup > Integration > Manage Integrations. The record must be Enabled. |
| Key ID | From Setup > Integration > Manage Authentication > OAuth 2.0 Client Credentials (M2M) Setup after uploading public.pem. Do not paste the Client ID here. |
| Certificate pair | Generate the certificate in StarShip, then upload that public file. |
| Regenerated certificate | Do not click Generate certificate again after you already uploaded public.pem. |
| Entity and Role | The M2M mapping must use the Entity StarShip runs as and a role assigned to that entity. |
| Features | REST Web Services and OAuth 2.0 must be enabled. |
Invalid Key ID or authentication failure
Confirm the Key ID was copied from the M2M certificate list, not from the Integration Record Client ID, and that the public.pem uploaded to NetSuite is the file generated by this same StarShip company.
The company saves, but the source list is empty
- Item Fulfillments must be Packed.
- The role needs SuiteAnalytics Workbook / SuiteQL and Item Fulfillment View.
- Confirm you are not looking at already Shipped fulfillments.
See also Set Up the NetSuite Company.
A custom field I expected is missing from Field Mapping
Field Mapping lists Item Fulfillment body and line custom fields (custbody_*, custcol_*) and PackShip related-record fields. Customer, Item, and other Custom Record fields are omitted. Hidden or Inactive flags are not available from REST, so those Item Fulfillment fields may still appear. Confirm the field applies to Item Fulfillment in NetSuite.
A mapped custom field does not populate the shipment
You can map header, line, and package custom fields across levels. Line custom fields mapped to a package use the first line value. Native package Length, Width, Height, and Type come from Integrated Shipping on the Packages tab, not from line custom dimension fields.