Before starting an upload, make sure you have read the information available in the Introduction to TDI and Importing data with TDI articles and followed the guidance provided.
Mandatory file:
Optional file:
Prerequisites:
None required. However, Locations can be linked to specific Factors, Customers, and Carriers. If you are uploading Locations prior to uploading any of the linkable entities, you cannot associate Locations to those entities because they have not yet been created. When you do upload those entities, you can use the correct optional file to link Locations at that time.
Note: Uploading the Contact entity prior to uploading this entity is not required, but if you have a single contact that is assigned to multiple Locations, it will provide the contact IDs necessary for the primaryContact column in location.csv. If this is not the case, uploading the Contact entity later and assigning contacts to Locations at that time is recommended.
Important note: Fields bolded and marked with an asterisk (*) are mandatory.
Filename: location.csv
Field |
Description |
Values/codes |
Format/restrictions |
id* |
Unique system ID for the entity. This ID is used anytime you would like to make updates or changes to the Location in TDI or when using TDI to associate additional details to the Location. If you do not have an existing ID to use in this field, you will need to create one. |
_ |
Important note: ID cannot contain any spaces. |
name* |
Name of Location. |
_ |
No character restrictions. |
account |
This is the account to which this Location is associated. The account’s reference ID should be entered here. |
_ |
Find the account ID for the respective account in the ID column of the Customer/Carrier/Factor upload sheet. |
accountType |
This is the type of account entered in the previous account column (Customer, Carrier, or Factor). |
CUSTOMER CARRIER FACTOR |
Enter one of the values provided in the previous column to indicate the type of account this Location is associated with. Types are case sensitive, enter exactly as shown (all caps). Required if entering an account. |
address.line1 |
Address details entered here will be considered the primary address for the Location in Turvo. Add the full primary address for the Location including street address, city, state, zip code, and country. |
_ |
Full address is mandatory for Location creation within Turvo and if no latitude or longitude are provided. |
address.line2 |
|||
address.city |
|||
address.state | |||
address.zip |
|||
address.type |
Indicates whether the address provided above is the main office address, billing address, or other in the Location’s profile in Turvo. |
Main: 1153 Other: 1154 Billing: 1155
|
Required if address is provided. Enter the corresponding code to indicate the Location type. |
address.country |
Address details entered here will be considered the primary address for the Location in Turvo. Add the full primary address for the Location including street address, city, state, zip code, and country. |
_ |
Enter the full name of the country. No character restrictions. |
latitude |
The latitude and longitude coordinates for the Location’s primary address can be entered in lieu of adding an address. If these fields are not entered, latitude and longitude will be populated in the Location profile based on the address. |
_ |
No character restrictions. For example, |
longitude |
|||
geofenceUnits |
Indicates the unit of measure that corresponds to the number in the geofenceDistance column. Can be in miles or kilometers. |
mi: 1540 km: 1541 |
Enter the corresponding code from the previous column to indicate the desired unit of measure. Note: If this field is left blank, the auto default units will be miles. |
geofenceDistance |
A circular geofence can be added around the Location. Enter the radius of the geofence in this field. |
_ |
Integers only. Note: If the field is left blank, the default distance should be 0.15. |
phone |
Primary phone number for the Location. |
_ |
Integers only - No dashes or parentheses. (Ex.: 3135551500) |
phone.extension |
Add a phone extension if applicable. |
_ |
No character restrictions. |
phone.country |
Phone number country of origin. |
Examples: US: United States CA: Canada |
Enter the two-letter country code found in the Country codes table. |
|
Enter the primary email address for the Location. |
_ |
No character restrictions. |
deliveryLink.isStatus |
Indicates whether a delivery link should be sent to the primary Location contact when a shipment for the Location reaches a particular status. |
True/False |
Enter True to send a link and False to do nothing. |
deliveryLink.status |
Delivery links can be sent when a shipment reaches a particular status. If you have indicated True above, select a status at which the link should be sent. |
Enter the code corresponding to the shipment status. The Shipment status codes table is linked in the previous column. |
|
deliveryLink.isLateType |
Indicates whether a delivery link should be sent to the primary Location contact when a shipment for the Location is Running late OR Approaching late. |
True/False |
Enter True to send a link and False to do nothing. |
deliveryLink.lateType |
If the above field is True, indicate whether you would like a delivery link to be sent when the shipment is either Running late OR Approaching late. |
Running late: 29651 Approaching late: 29652 |
Enter the corresponding code from the previous column to indicate when the link should be sent. |
deliveryLink.isTime |
Indicates whether a delivery link should be sent to the primary Location contact when the shipment ETA reaches a specified value. |
True/False |
Enter True to send a link and False to do nothing. |
deliveryLink.time |
If the above field is True, enter the ETA threshold that must be met in order for a link to be sent. The threshold can be in minutes or hours. |
_ |
Integers only. |
deliveryLink.timeUnits |
Indicates whether the above threshold is in minutes or hours. |
Hours: 9900 Minutes: 9901 |
Enter the corresponding code from the previous column to indicate whether the threshold is in hours or minutes. |
primaryContact |
Enter the reference ID for the primary contact for this Location. The contact must exist in Turvo. |
_ |
No character restrictions. If the Contact entity was uploaded before the Location entity, contact IDs can be found in the ID column within the contact.csv spreadsheet. If the Contact entity was not uploaded before the Location entity, leave blank. |
specialInstructions |
Enter special instructions for the particular Location, such as directions, hours of operation, or other information required for entry. |
_ |
No character restrictions. |
copyInstructions |
Special instructions entered above can be automatically copied into the shipment route notes and other documents. |
True/False |
Enter True if you would like special instructions to copy into shipment details, and False if you do not want them to copy. |
directions |
A field to enter directions. This is only visible within the Location profile. |
_ |
No character restrictions. |
groupId |
If the Location should belong to a group, enter the Turvo reference ID for the group to establish the mapping. Note: If a Location belongs to multiple groups, additional groups will be configured in the optional group.csv file. |
_ |
No character restrictions. Find the reference ID for the respective group in the Group.csv upload sheet. |
locode |
The UN/Locode value for the Location. |
_ |
If no value is entered in this field, it will be determined by the latitude/longitude for the Location. |
ltlShipmentServices
|
Enter one or more LTL shipment service IDs for a location. |
Use the table linked in the Values/codes column to the left to find and enter a single LTL shipment service code. If there are multiple services, separate codes using commas without spaces and contained within brackets. Example: |
Filename: contact_info.csv
Field |
Description |
Values/codes |
Format/restrictions |
id* |
Unique system ID required for TDI upload. This ID must be used if the contact information is ever updated using TDI. |
_ |
Important note: ID cannot contain any spaces. |
contextId* |
This ID corresponds to the Location that this contact information should be associated with. |
_ |
Find the reference ID for the respective Location in the location.csv upload sheet. No character restrictions. |
email.type |
Indicate the type of email address for the contact. |
Other email: 1061 Billing email: 1062 Appointment Scheduling email: 1063 Main email: 1060 - Main |
Required if an email is provided. Enter the code corresponding to the type of email address. |
|
Enter an email address for the Location. This will appear under the Location Details tab > General section. |
_ |
Standard email address format. |
phone.type |
Type of phone number (work, home, etc.) |
After Hours phone: 1073 Billing phone: 1074 Fax: 1072 Main phone: 1070 Other phone 1071 |
Enter corresponding code. Required if entering Phone. |
phone |
Enter a phone number for the Location. This will appear under the Location Details tab > General section. |
_ |
Integers only - No dashes or parentheses. (Ex.: 3135551500) |
phone.extension |
Extension for the phone number added above. |
_ |
Integers only. |
phone.country |
Phone number country of origin. |
Examples: US: United States CA: Canada |
Enter the two-letter country code found in the Country codes table. |
isPrimaryEmail |
Indicate whether this is the primary email address for the Location. |
True/False |
Enter True to make it primary and False to make it not primary. |
isPrimary |
Indicate whether this is the primary phone for the Location. |
True/False |
Enter True to make it primary and False to make it not primary. |
isTurvoLink |
Indicates whether a delivery link should be sent to this contact when a shipment for the Location reaches a particular status. |
True/False |
Enter True to send a link and False if a link should not be sent. |
Filename: facility.csv
Field |
Description |
Values/codes |
Format/restrictions |
id* |
Unique system ID required for TDI upload. This ID must be used if the facility information is ever updated using TDI. |
_ |
Important note: ID cannot contain any spaces. |
contextId* |
This ID corresponds to the Location that this facility should be associated with. |
_ |
Find the reference ID for the respective Location in the location.csv upload sheet. No character restrictions. |
hoursOfOperation.start |
Start time of the facility’s operations. |
_ |
Format: hh:mm:ss Important note: |
hoursOfOperation.end |
End time of the facility’s operations. |
_ |
Format: hh:mm:ss Important note: |
hoursOfOperation.days |
Days of the week that the facility is operating. |
mon,tue,wed,thu,fri,sat,sun |
Enter the day abbreviation shown in the previous column corresponding to the days of the week that the facility is operating. Each abbreviation should be separated by a comma with no spaces. |
shippingHours.start |
Start time of shipping hours at the facility. |
_ |
Format: hh:mm:ss Important note: |
shippingHours.end |
End time of shipping hours at the facility. |
_ |
Format: hh:mm:ss Important note: |
shippingHours.days |
Days of the week the facility allows shipping hours. |
mon,tue,wed,thu,fri,sat,sun |
Enter the day abbreviation shown in the previous column corresponding to the days of the week that the facility is shipping. Each abbreviation should be separated by a comma with no spaces. |
receivingHours.start |
Start time of receiving hours at the facility. |
_ |
Format: hh:mm:ss Important note: |
receivingHours.end |
End time of receiving hours at the facility. |
_ |
Format: hh:mm:ss Important note: |
receivingHours.days |
Days of the week the facility allows shipping hours. |
mon,tue,wed,thu,fri,sat,sun |
Enter the day abbreviation shown in the previous column corresponding to the days of the week that the facility is receiving. Each abbreviation should be separated by a comma with no spaces. |
schedulingType |
Select the default scheduling type for stops at this Location. Newly-created appointments will appear with this scheduling type, and can be changed to the other type as needed. |
FCFS (first come, first served): 9400 By appointment: 9401 |
Enter the code corresponding to the scheduling type. |
crossDock |
Indicate whether this facility can accommodate crossdock. |
True/False |
Enter True if it can accommodate crossdock and False if it cannot. |
coldStorage |
Indicate whether it is a cold storage facility. |
True/False |
Enter True if it is a cold storage facility and False if it is not. |
warehouse |
Indicate whether it is a warehouse. |
True/False |
Enter True if it is a warehouse and False if it is not. |
useApptAsDwellTime |
Indicate whether the expected dwell time should be equivalent to the appointment start and end time. Applies only to By appt appointments that have a start time and an end time. Overrides other dwell time settings if the above criteria is met. |
True/False |
Enter True to enable using the appointment time as dwell time, and False to disable it. |
dwellTime |
Indicates the expected time that a vehicle is stopped at the Location. This is used to better calculate ETAs for subsequent stops in the route. |
_ |
Enter the number of hours or minutes that a vehicle is expected to stop at the Location. |
dwellTimeUnit |
Indicate the unit of measure for the number entered above. |
hours: 9900 minutes: 9901 |
Enter the code corresponding to the unit of measure. |
Filename: group.csv
Field |
Description |
Values/codes |
Format/restrictions |
id* |
Unique system ID required for TDI upload. |
_ |
Important note: ID cannot contain any spaces. |
contextId* |
This ID corresponds to the Location that is being added to the Group. It is the reference ID for the Location (i.e. what is entered in the ID column in the location.csv file). |
_ |
Find the reference ID for the respective Location in the location.csv upload sheet. No character restrictions. |
groupId* |
This ID corresponds to the Group that the Location above should be added to. |
_ |
Find the reference ID for the respective group in the Groups mandatory upload sheet. No character restrictions. |