Skip to main content
Version: 0.0.0

SFTP Export: In-house TMS Integration

This page contains information on how to integrate your In-house TMS with Chaine using a SFTP File export of loads.

For this integration, Chaine will provide you with an SFTP server credentials, server information and a folder path where you can upload your load files. The load files should be in CSV format and should contain all the fields that are required to create a load in Chaine (see below).

When to send a load in a CSV file

There are two strategies that can be utilized when sending loads in a CSV file:

  1. Send the entire load object with all the fields every time there is a change to the load: We recommend that you send the entire load object with all the fields below.
  2. Send all open loads and loads recently marked delivered every X minutes: If it is difficult to send a load whenever there is a change, you can send all the "active" loads (loads that have not delivered), and loads that have been marked delivered in the last 24 hours. This will ensure that all loads are up to date in Chaine. Chaine automatically handles the logic to update the load status based on the information in the CSV file. If a load hasn't changed, Chaine will not update the load.

| Note: If you find it hard to map to the exact field names, don't stress that too much. We can always do a custom field mapping for your file exports. You can just do a dump of all the files every X minutes, or if you have the ability to export a file whenever there is a change, that will work too. If needed, we'll map the fields to reduce the work from your end. If there is anything else we can do to make it easier on your end, just let us know and we'll handle it!

Load Object

Below is the load object and fields to send in a CSV fields. Not all fields are required, but the more fields you send, the more features you can utilize in Chaine. Also, if a load is multiple stop, you can send the other stops in the same CSV file as per the stop2 example below. For us to process the other stops, it is required to send the totalStops.

FieldDescriptionExample ValueRequiredFor Chaine Product
shipmentIDUnique identifier for the shipment used in your TMS123456NoAll
shipmentNumberShipment number123456YesAll
shipmentStatusCurrent status of the shipmentCarrier assignedYesAll
carrierCostTotalTotal cost for the carrier1000NoAll
customerChargeTotalTotal charge for the customer1200NoBooking
carrierIDUnique identifier for the carrier1234NoAll
carrierDOTNumberDepartment of Transportation number for the carrier123456YesTracking
carrierMCNumberMotor Carrier number for the carrier123456YesTracking
carrierSalesRepIDSales representative ID for the carrier in your TMS. This is used when a carrier sales rep accepts a carrier offer, and we need to send the carrier sales rep's id back to your TMS for assignment.1234NoAll
carrierSalesRepEmailEmail of the carrier's sales representativecarrierrep@123logistics.comYes (when available)All
customerSalesRepEmailEmail of the customer's sales representativecustomerrep@123logistics.comYes (when available)All
customerSalesRepIDSales representative ID for the customer1234NoAll
commodityType of commodity being shippedCommodityYesBooking
customerIDUnique identifier for the customer123456NoAll
customerNameName of the customerCustomer NameNoAll
distanceDistance of the shipment100YesBooking
doNotPostFlag indicating whether the load should be postedfalseYesBooking
dispatcherEmailEmail of the dispatcherdispatch@yourcarrier.comYesTracking / Copilot
driverPhonePhone number of the driver234567890YesTracking / Copilot
equipmentLengthLength of the equipment in feet53YesBooking
equipmentTypeType of equipmentVanYesBooking
isHazmatFlag indicating if the load is hazardous materialfalseYesBooking
isHotLoadFlag indicating if the load is urgentfalseNoBooking
isOversizedFlag indicating if the load is oversizedfalseNoBooking
loadPostDescriptionDescription of the load postingThis load requires tarps and must pickup no later than 8amYesBooking
teamRequiredFlag indicating if a team is requiredfalseYesBooking
maxTemperatureMaximum temperature for the shipment20YesBooking
minTemperatureMinimum temperature for the shipment20YesBooking
modeMode of transportationTruckloadYesAll
proofOfDeliveryReceivedFlag indicating if proof of delivery has been receivedfalseYesCopilot
specialInstructionsSpecial instructions for the shipmentWhen you arrive at the destination, please call the customer at 123-456-7890YesTracking
maxCarrierRateMaximum rate for the carrier1100YesBooking
targetCarrierRateTarget rate for the carrier1000YesBooking
totalStopsTotal number of stops for the shipment3YesAll
trailerNumberNumber of the trailer123456YesTracking
truckNumberNumber of the truck123456YesTracking
weightWeight of the shipment in pounds40000YesBooking
originAddressLabelLabel for the origin address. Either this or the other Address fields is required.123 Main St, New York, NY 10001YesAll
originAddressCityCity of the origin addressNew YorkYesAll
originAddressPostalCodePostal code of the origin address10001YesAll
originAddressStateCodeState code of the origin addressNYYesAll
originAddressStreetStreet of the origin address123 Main StYesAll
originAddressLatitudeLatitude of the origin address40.7128YesNo
originAddressLongitudeLongitude of the origin address-74.0060YesNo
originAppointmentAppointment time for the origin address. Either this or the other appointment fields are required when available.2022-01-01T00:00:00ZYes (if available)All
originAppointmentDateAppointment date for the origin address2022-01-01Yes (if available)All
originAppointmentTimeAppointment time for the origin address00:00:00Yes (if available)All
originLatestAppointmentLatest appointment time for the origin address (if the appointment is FCFS)2022-01-01T00:00:00ZNoAll
originLatestAppointmentDateLatest appointment date for the origin address (if the appointment is FCFS)2022-01-01NoAll
originLatestAppointmentTimeLatest appointment time for the origin address (if the appointment is FCFS)00:00:00NoAll
destinationAddressLabelLabel for the destination address. Either this or the other Address fields is required.123 Main St, New York, NY 10001YesAll
destinationAddressCityCity of the destination addressNew YorkYesAll
destinationAddressPostalCodePostal code of the destination address10001YesAll
destinationAddressStateCodeState code of the destination addressNYYesAll
destinationAddressStreetStreet of the destination address123 Main StYesAll
destinationAddressLatitudeLatitude of the destination address40.7128YesAll
destinationAddressLongitudeLongitude of the destination address-74.0060YesAll
destinationAppointmentAppointment time for the destination address Either this or the other appointment fields are required when available.2022-01-01T00:00:00ZYes (if available)All
destinationAppointmentDateAppointment date for the destination address2022-01-01Yes (if available)All
destinationAppointmentTimeAppointment time for the destination address00:00:00Yes (if available)All
destinationLatestAppointmentLatest appointment time for the destination address (if the appointment is FCFS)2022-01-01T00:00:00ZNoAll
destinationLatestAppointmentDateLatest appointment date for the destination address (if the appointment is FCFS)2022-01-01NoAll
destinationLatestAppointmentTimeLatest appointment time for the destination address (if the appointment is FCFS)00:00:00NoAll
stop2AddressLabelLabel for the second stop address123 Main St, New York, NY 10001NoAll
stop2AddressCityCity of the second stop addressNew YorkNoAll
stop2AddressPostalCodePostal code of the second stop address10001NoAll
stop2AddressStateCodeState code of the second stop addressNYNoAll
stop2AddressStreetStreet of the second stop address123 Main StNoAll
stop2AddressLatitudeLatitude of the second stop address40.7128NoAll
stop2AddressLongitudeLongitude of the second stop address-74.0060NoAll
stop2AppointmentAppointment time for the second stop address2022-01-01T00:00:00ZNoAll
stop2AppointmentDateAppointment date for the second stop address2022-01-01NoAll
stop2AppointmentTimeAppointment time for the second stop address00:00:00NoAll
stop2LatestAppointmentLatest appointment time for the second stop address (if the appointment is FCFS)2022-01-01T00:00:00ZNoAll
stop2LatestAppointmentDateLatest appointment date for the second stop address (if the appointment is FCFS)2022-01-01NoAll
stop2LatestAppointmentTimeLatest appointment time for the second stop address (if the appointment is FCFS)00:00:00NoAll
stop2TypeType of the second stop (e.g., Pickup, Delivery)PickNoAll

We make integrating with Your TMS's simple. Most TMS's have an export functionality where the entire load object can be exported as-is any time there is a change to the load. This is the preferred method of integration.

We recommend that you send the entire load object with all the fields to this end-point. Our workflow automation features can be created on any field in your TMS, and which will give your users an unlimited amount of possibilities when creating workflow rules. Chaine will map your entire load object with all the fields to our internal load object and update the load accordingly in our system. This functionality allows customers to utilize the complete suite of features.

The flow is:

  1. A load is created, updated or deleted in your TMS
  2. The entire load object with all the fields is exported to Chaine via a webhook you provide. For deleted, you can simply send the unique load ID and action type of delete.
  3. Events are then published back to a webhook you specify (depending on the functionality that is determined to be updated back in the TMS for the integration).

License

Apache 2.0