This article outlines common errors with the Starshipit/NetSuite integration and how to resolve them. For setup instructions, see how to integrate with NetSuite.
Error with writeback
The NetSuite API limits each NetSuite user to a single API connection based on the user's login credentials. This can cause Starshipit accounts that use a NetSuite connection to fail if other calls are made to the NetSuite API using the same credentials.
The following errors may be seen:
- Only one request may be made against a session at a time
- The operation has timed out
Starshipit will try to update these orders again in a scheduled fashion to ensure they are being updated in NetSuite. Alternatively, you can purchase concurrent connection licenses from NetSuite which will permit simultaneous requests from the same user account.
Netsuite Mapping
| Field | Maps to | Info |
|---|---|---|
| SourceKey | "IF" + ItemFulfillment.internalId OR "INV" + Invoice.internalId OR SalesOrder.internalId | |
| OurRef | tranId (transaction ID) from ItemFulfillment / Invoice / SalesOrder | |
| SequenceStr | tranId | |
| TheirRef | otherRefNum | |
| Date | tranDate | |
| OrderCurrency | currency.symbol (ISO 4217 code) or currency.name | |
| ShippingMethod | shipMethod.name | |
| OrderValue | Sum of (Item.Price * Item.Quantity) or total (Invoice/SalesOrder) | |
| AddressDetails.Instructions | Custom field custbody_delivery_instructions or custbody4 | String/Select |
| ATL (Authority to Leave) | Custom field custbody_authority_to_leave or custbody_atl_check_box | Boolean |
| SignatureRequired | Custom field custbody_signature_required | Boolean |
| AddressDetails.Company | shippingAddress.addressee | If attention is also present |
| To | shippingAddress.attention or addressee | Fallbacks applied |
| Telephone | shippingAddress.addrPhone | |
| AddressDetails.Building | shippingAddress.addr1 | When addr2 & addr3 present |
| AddressDetails.Street | shippingAddress.addr2 | Multi-line fallback logic |
| AddressDetails.Suburb | shippingAddress.addr3 | Fallback logic |
| AddressDetails.City | shippingAddress.city | |
| AddressDetails.State | shippingAddress.state | |
| AddressDetails.PostCode | shippingAddress.zip | |
| AddressDetails.Country | shippingAddress.country | Converted to full name via GetCountryName |
| ProductIdentifier | item.internalId | |
| SKU | ItemAttributes.upcCode | Or itemId if UseItemIdAsSKU is true |
| Weight | ItemAttributes.GetWeightKg() | Derived from weight & weightUnit |
| Country | countryOfManufacture | Converted via GetCountryName |
| HSCode | manufacturerTariff | |
| Description | description HTML replaced with space, or item.name |
|
| Quantity | quantity | |
| Price | amount / quantity | From order line item |
| CustomField | line | Order line number, when specified |