TMS 7.12 EDI Setup and Processing Summary

Prev Next

Overview

EDI Setup and Processing Summary

  1. Set up EDI global parameters from TMS Admin → Configuration.

  2. If desired, set the Customer Charge Code on each Accessorial record.

  3. Enter Kleinschmidt, Cleo, and/or Custom EDI credentials from TMS Admin → Credentials.

  4. Set up each Trading Partner from TMS Admin → EDI Locations. Information may be bulk loaded if available. This avoids the creation of duplicate accounts and contacts when EDI Load Tender (204) transactions are processed. Enter values for the six override fields as needed.

  5. Set up each EDI Bill To from TMS Admin → EDI Locations.

  6. Start the EDIWatcherJob (which starts the EDIJob) batch job which does the following:

    1. Receives inbound Load Tender (204) transactions from customers.

      1. To allow for quote creation, confirm Customer Rate Load and Carrier Rate Load are checked under Use Platform Events For in TMS Admin, Configuration.

      2. When Enable Save & Rate for Load Creation is checked under TMS Admin, Configuration:

        1. Carrier quotes are automatically generated from API and stored rate calculations.

          1. Loads without a mode prompt users to add one when first opening the FQA.

          2. When updated 204 transactions are received, this rating process does NOT occur.

        2. Customer quotes are automatically generated from stored rate calculations.

      3. When EDI Update Settings for Customer Quote information with the Use Stored Rate action is present:

        1. Stored rates are calculated for new and updated EDI 204 transactions. 

        2. Pass in a Customer Quote in the <charges> section or create a Customer Quote from a stored customer rate when a Load is created.

        3. The Enable Save & Rate for Load Creation process does NOT occur.

    2. Receives inbound Load Tender Response (990) transactions from Carriers.

    3. Receives inbound Load Status (214) transactions from intermodal Carriers.

    4. Sends outbound Load Status (214) location updates to customers for moving loads.

    5. Sends outbound Load Tender Response (990) transactions to “auto-accept” customers.

    6. Receives inbound Load Invoice (210) transactions from Carriers.

      EDI 214 and 990 outbound transactions are processed as Platform Events.

      • EDI 214 outbound transactions are sent when the EDI status is either Accepted or Declined.

      • EDI 990 outbound transactions are sent when a stop date or time is adjusted OR when a Carrier arrives/departs a stop.

  7. This job also sends EDI 214 status transactions for in-transit EDI loads for customers requesting them.

  8. Load Tenders are represented as Loads with an EDIStatus field value of "Pending."

  9. Load Tenders can be updated or cancelled by the client. For trading partners that are not using the EDI Order Update Console, the EDI Status field in these cases changes to "Updated by Customer" and "Cancelled by Customer," respectively. Updated load tenders must be re-accepted. For trading partners that are using the EDI Order Update Console, the EDI Status field will change to "Update Pending from Customer" when update 204s are received. This requires a user to process the update 204 from the EDI Order Update Console. 
    See the article on using the EDI console.

  10. For trading partners that are not using the EDI Order Update Console, Initiate Load Tender Response (990) transactions by changing the EDI Status field to "Accept" or "Decline." Pass the EDI Decline Reason field by setting it on the Load.

  11. EDI Tenders with a populated EDI Response Deadline field must be responded to before the deadline.

  12. Shipment Status (214) transactions are sent when:

    1. Appointment Time is populated on a Stop.

    2. Arrival Date is populated on a Stop.

    3. Departure Date is populated on a Stop.

    4. The location updates once a day when a load is in-transit.

  13. EDI 214 transactions can also be sent manually from the Load Detail page for completed/delivered loads.

  14. Outbound Invoice (210) transactions are initiated by selecting Customer Invoices and clicking on the Generate & Send button from the Customer Invoice tab or individually by clicking the Send Via EDI button from the page layout.

  15. Add the EDI Accept/Decline button to the load list view if bulk EDI 990 Accepts/Declines are desired.

  16. Add the EDI Status button to the load list view if bulk EDI 214 send transactions are desired.

  17. The Stop object Carrier Status Reason picklist is used for EDI 214 status transactions. Entries may be deleted from this list, but do not add to or modify existing entries if you are using EDI.

  18. The EDI Provider field on the Load object indicates which EDI Provider sent the Tender (204) Transaction.

  19. For Carriers that receive EDI 204 tenders and send EDI 990 Accepts/Declines, make sure the Carrier Service Tender Method field is set to EDI and that the EDI Provider field is also set.

  20. A Quote/Contract Id is typically required for Carrier quotes that are tendered via EDI.

  21. For each trading partner EDI Location, add or configure EDI Update Setting and EDI Load Reference records as needed. Add these as related lists on the page layout.

  22. Make sure the EDI Transaction table is on the Load page layout as a related list.

  23. The Load Container/Trailer Number field may be populated by an inbound EDI 214 transaction.

  24. Set the Transportation Profile object Location Update Send Frequency field for those customers that require frequent EDI 214 X6 location updates for moving loads.

    X6 location updates are processed by the Queued Transaction job.

  25. If Appointment Times are populated on an inbound EDI 204 tender, the corresponding EDI 214 Appointment Time status updates are automatically sent on tender acceptance.

  26. When using Orderful, populate the Trading Partner ID from TMS Admin → Configuration.

  27. A custom EDI implementation may be used by implementing the web service methods in the EDI Specification. Enter the URL and credential information from TMS Admin → Credentials, using the Custom EDI record. Note that the Custom EDI connector supports Basic Authentication.

EDI Load References

These records allow for dynamically creating Load References that are then sent with all outbound EDI transactions.

It is possible to add to the TMS Field picklist if custom fields are to be sent as Load Reference elements.

For more specific EDI transaction information see the specific transaction articles.

204 Load Tenders

210 Load Invoices

214 Load Status

990 Tender Responses

EDI Error Codes

This table contains a list of EDI error codes/messages and steps to resolve the issue or detailed information.

Error Code/Message

Quick Description

Argument 1 cannot be null(rtms)218

A required field is not populated 

EDI failure: Stop number is invalid. Cannot be zero.

The <dropoffStopNum> CANNOT be set at zero. There must be a matching Stop number passed in the transaction.

First exception on row 0; first error: STRING_TOO_LONG

STRING_TOO_LONG occurs due to populating a field with more characters than it’s max length.

Unable to tunnel through proxy: 'HTTP/1.1 503 Service Unavailable"(rtms)34

'HTTP/1.1 503 Service Unavailable"(rtms)34' means that the EDI web service was down during the time of the callout to it.

Read timed out(rtms) 35

The Kleinschmidt transaction is timing out. As long as the EDI queue is still in place, the Loads will be picked up the next time the job runs.

EDI Troubleshooting

EDI Failure: Stop number is invalid. Cannot be zero.

Issue

Kleinschmidt EDI tender fails due to zero being passed as a Stop number. Stop number cannot be zero.

Resolution

The <dropoffStopNum> CANNOT be set at zero. There must be a matching Stop number passed from Kleinschmidt.

<pickupStopNum>2</pickupStopNum>

<dropoffStopNum>0</dropoffStopNum>

<itemNum>12432</itemNum>

Insert failed. First exception on row 0; fist error: STRING_TOO_LONG, Transaction Payload: data value too large.

Issue

The STRING_TOO_LONG error occurs due to populating a field with more characters than the maximum length. For example, if a field length is set to 255 characters and attempt to insert 300 characters, this exception is thrown.

Resolution

This error is due to duplicate reference numbers sent from Kleinschmidt. Resolve this issue by contacting the Kleinschmidt team at motor@kleinschmidt.com and request they remove the duplicate fields from the XML transaction.