Winter '25 SMC3 EVA

Prev Next

Overview

The SMC3 EVA integration provides several pieces of functionality for tendering, tracking, and managing documents for Loads.

  • Quoting: Bulk rate Loads with the SMC3 RateWare integration.

  • Automated PRO Assignment: Request a PRO Number that is placed on the Bill of Lading.

  • Dispatch: Book a Carrier for the Load or cancel Load Tenders.

  • Status Notifications: Load status updates are sent to the TMS.

  • Document Notifications: SMC3 sends document updates to the TMS.

Setup

To enable the SMC3 EVA integration for an org, open a case with Revenova Support.

Include the Client ID field provided by SMC3 when creating the case.

The Client ID is registered and is returned with a Revenova-provided password. Enter this password into the Password 3 field on the credential card.

Enter Credentials

Enable the SMC3 EVA integration by completing the following steps.

  1. Navigating to TMS Admin

  2. Select Credentials

  3. Select the Global Services tab,

  4. Find SMC3 EVA in the list and open the card.

  5. Check the Enabled and Receive Updates boxes.

  6. Enter the User ID, Password 1, Password 2, and Password 3 into the text fields. Password 3 is provided by Revenova.

  7. Click the Save button when finished.

  8. A success message displays and the Callback Endpoint Created box is Checked.

Valid credentials are required from an SMC3 EVA subscription. See examples in the table below.

User ID

Password 1

Password 2

Password 3

Customer Number

EVA Access Id

Client Id

Client Secret

Revenova Provided

The SMC3 EVA Access Id, Client Id, and Client Secret are provided by SMC3. Enter the same credentials for testing in a sandbox. When sandbox testing is complete, turn off the integration. Uncheck the Enabled box on the Credential card in TMS Admin → Credentials in the sandbox environment. Click Save.

SMC3 EVA credentials should only be enabled in production to ensure notifications and documents are sent to the correct environment.

Remote Site Settings

Upgrading from previous versions of the TMS may have outdated information. If using additional SMC3 integrations with EVA, check that the Remote Site Settings for the CarrierConnect, EVA, and RateWare URLs are up to date.

  1. Click the Setup gear icon in the top right corner.

  2. From the drop-down, click Setup.

  3. In the Quick Find Toolbar type Remote Site Settings and click the link.

  4. From the list of remote sites find SMC3 and click the Edit link.

  5.  Update the Remote Site URLs to match the Service URLs below.

Service URL: https://smc3proxy.revenova.com/

Test Service URL: https://smc3proxy.revenova.com/

RateWare Quoting & Tendering/Tracking with EVA

Hybrid API Carrier Services that use SMC3 RateWare for quoting may use SMC3 EVA for tendering, tracking, and receiving Load documents. These Carrier Services must be created with the SMC3 EVA Credentials Id. Note that the API Provider field contains SMC3 EVA.

To receive quotes, valid credentials for SMC3 RateWare must be entered on the SMC3 RateWare credentials card. Navigate to TMS Admin → Credentials and enter active credentials.

Quotes are returned from SMC3 RateWare and stored on the Load. Once a quote is assigned, the SMC3 EVA integration continues the Load lifecycle. If necessary, create Accessorial Rate Entries to account for additional charges as SMC3 RateWare only supports Freight and Fuel based rates.

Set the Quote Method, Tender Method, and Status Method fields on the Carrier Services to API.

If not using the SMC3 RateWare integration for quoting, enter the appropriate Quote Method (Stored Rate, Email, Phone, or Fax) on the SMC3 EVA Carrier Services.

Accessorial Codes

SMC3 RateWare does not support rating with accessorial charges. Include additional charges on Loads by creating stored Accessorial Rate Entries. Accessorial services are sent to Carriers during the Dispatch call.

  1. Create new or edit existing Accessorial records.

  2. From the Related tab, click New on the API Accessorial related list.

  3. From the API Provider picklist, select SMC3 EVA.

  4. Add the SMC3 API Accessorial Code.

  5. Click Save.

SMC3 EVA must support the accessorial charge(s) to include in the Dispatch call. Any unsupported accessorial codes sent to SMC3 EVA generate an error.

The TMS does not include any accessorial charges with the EXCL API Accessorial code as part of the Dispatch call.  Follow the steps above for all unsupported accessorials and add EXCL as the API Accessorial code for the SMC3 EVA API Accessorials.

See SMC3 documentation for a list of supported Accessorial codes.

Service Levels

The SMC3 EVA integration supports requesting non-standard service from LTL Carriers. Select options for delivery dates and times. See more information on Service Levels.

  • Guaranteed Morning

  • Guaranteed Noon

  • Guaranteed End of Day

  • Standard

Is no Service Level is selected, the default Standard Service Level is sent to SMC3.

The Service Level field only displays on the Carrier quote builder if the Carrier Service contains SMC3 EVA credentials.

Specify Service Levels on Rate Entries to automatically add Service Levels to quotes. Create Rate Entries for each Carrier Service and add a Service Level as necessary.

When necessary, manually select a Service Level before tendering the Load to the Carrier.

SMC3 EVA API Code

Service Level

GTD_AM

Guaranteed Morning

GTD_NOON

Guaranteed Noon

GTD_PM

Guaranteed End of Day

STND

Standard

SMC3 EVA Integration Calls

Tendering, Tracking, and Managing Documents with the SMC3 EVA integration is completed with a series of API calls.

  1. Automated PRO Assignment

  2. Dispatch

  3. Cancel Dispatch

  4. Service Levels

  5. Status Notifications

  6. Document Notifications

See each section below for more specific call information.

  • The SMC3 EVA integration only supports 2 Stop Loads. If more than 2 Stop locations are included on a Load, no information returns.

  • SMC3 EVA does not support the same location for Pickup and Delivery Stops. If the same location is used as a Pickup and Delivery, users receive an error.

Automated PRO Assignment API Call

The Automated PRO Assignment call requests a PRO Number from the Carrier. The PRO Number is included on the Bill of Lading to assist in tracking the Load. When a PRO Number is returned, that is used to create a barcode. The TMS has an integration with TEC-IT to generate barcodes based on the PRO Number. See the barcode integration documentation for more information.

The Request PRO Number checkbox field on the Carrier Service record determines whether this call is made or not for a given Load. This field is only visible when Carrier Services created with SMC3EVA credentials are added to the Carrier quote on the FQA.

The Request PRO Number field only displays if the Carrier Service contains SMC3 EVA credentials.

When Request PRO Number is Checked, the Automated PRO Assignment call occurs when the Assign or Tender action is completed on the FQA.

The Carrier Service assigned to the Load and the Origin City, State, Zip on the load are sent to acquire the PRO Number.

Carrier Services with SMC3EVA credentials call to the SMC3 RateWare integration for quoting purposes. Quoting with AccuFRATE, Banyan, or Project44 does not allow tendering, tracking, and managing documents with the SMC3EVA integration.

TMS Operation

SMC3 Endpoint

Request Type

Response

Request a PRO Number

Automated PRO Assignment

POST

200: Success

400: Malformed Request

500: Unexpected Error

Sample Automated PRO Assignment Request Payload

{
  "isTest": "true",
  "origin": {
    "city": "Louisville",
    "stateProvince": "KY",
    "postalCode": "40213",
    "country": "USA"
  }
}

TMS Fields Included

Object

Field

Type

SMC3 Field

(1P) Stop

City

Text(40)

city

(1P) Stop

Country

Picklist

stateProvince

(1P) Stop

Postal Code

Text(20)

postalCode

(1P) Stop

State/Province

Picklist

country

Transportation Profile

*SCAC

Text(6)

scac

*Fields marked with an asterisk are required to request a PRO Number.

Sample Automated PRO Assignment Response Payload

{
  "transactionId": "0a000a00-aaa0-00aa-000a-00aa00a00000",
  "scac": "SMCA",
  "proNumber": "12345678",
  "messageStatus": {
    "status": "PASS",
    "code": "10000000",
    "message": "Transaction was successful.",
    "resolution": "",
    "information": []
  }
}

TMS Field Updates

Object

Field

Type

SMC3 Field

Load

PRO Number

Text(40)

proNumber

Dispatch API

Once a Carrier Service is Assigned to the Load, the Dispatch call tenders the Load to the Carrier.

Tendering the Load to a Carrier requires the PRO Number returned from the Automated PRO Assignment call.

When quoting with Rateware, the Carrier Quote Service Level field is auto-populated from the Rate Entry.

The Dispatch call is sent when:

  1. The Tender button on the FQA is clicked.

  2. The Tender method on the Carrier Service is API.

  3. The Carrier Service Credentials field matches a set of SMC3 EVA API credentials.

The following information is required to successfully send the Dispatch call and tender the Load.

  1. Contact information is required for the first Stop and included automatically when present on the Account record.

  2. All Stops require a Location account.

  3. The first Stop Location account must have a value for the Shipping/Receiving Contact field. If the Shipping/Receiving Contact field is blank, an error is generated.

  4. Any accessorial charges must be configured correctly.

Accessorial charges may be added to the Carrier quote after the quotes are returned from SMC3.

  • Accessorial charges added from the Carrier Quote record or related list - or from the Carrier Quote Builder - are not included in the Dispatch call when tendering the Load to the Carrier.

  • Accessorial charges added to the Load Accessorials related list on the Load Lightning Record Page are included in the Dispatch call when tendering the Load to the Carrier.

Include any special pickup or delivery information in the Stop Instructions field to send in the Dispatch call.

When sending Hazmat information, the TMS first checks the Line Item Hazmat Contact and Hazmat Contact Phone fields. If no values are present, the TMS checks the Account for Hazmat Contact and Phone fields.

Included in the Dispatch call is any API Accessorial codes from accessorial charges added to the Load. The API Accessorial code must be supported by SMC3 EVA. Any unsupported codes generate an error.

The first and last Stop Instructions fields are combined and sent in the Dispatch call.

  • When the Service Level field on the Carrier quote is blank, the default Standard value is sent in the Dispatch call.

  • When no Expected Delivery Date is included on the Load, no date is sent in the Dispatch call.

TMS Operation

SMC3 Endpoint

Request Type

Response

Tender Load to a Carrier

Dispatch

POST

200: Success

400: Request Error

500: Unexpected Error

TMS Fields Included

Object

Field

Type

SMC3 Field

*‘TEST’ or ‘CREATE’

dispatchCode

Account

*Name

Name

billTo → name

Account (CarrierBillTo)

*TMS Type

Picklist (Multi-Select)

payer

Account (shipFrom)

*Account Name

Name

origin → name

Account (shipTo)

*Account Name

Name

destination → name

Account

*Billing Address

Address

billTo → address, city, country, postalCode, stateProvince

Account (shipFrom)

*Shipping Address

Address

origin → address, city, country, postalCode, stateProvince

Account (shipTo)

*Shipping Address

Address

destination → address, city, country, postalCode, stateProvince

API Accessorial

Code

Text(80)

accessorial → codes

Carrier Quote

Quote/Contract Id

Text(100)

referenceNumbers → estimate

Carrier Quote

*Service Level

Lookup(Service Level)

level

Contact (shipFrom)

*Account Name

Name

contact → name

Contact (shipFrom)

*Phone

Phone

contact → phone

Contact (shipFrom)

*Email

Email

contact → email

Contact (shipTo)

Name

Name

contact → name

Line Item

*Handling Units

Picklist

packagingType

Line Item

Hazmat Contact

Lookup(Contact)

hazardousContact → name, phone

Line Item

Height

Number(16, 2)

height

Line Item

*HU Count

Number(18, 0)

pieces

Line Item

*Item Description

Text(255)

description

Line Item

Length

Number(16, 2)

length

Line Item

*NMFC Class

Picklist

classification

Line Item

*Weight

Number(18, 0)

weight

Line Item

Width

Number(16, 2)

width

Load

Bill of Lading Number

Text(55)

referenceNumbers → bol

Load

Expected Delivery Date

Formula (Date)

delivery → date

Load

*Expected Ship Date

Formula (Date)

pickupAvailability → date

Load

*Payment Terms

Picklist

terms

Load

PO Number

Text(100)

referenceNumbers → po

Load

PRO Number

Text(40)

referenceNumbers → pro

Stop (first)

*Appointment Time

Text(11)

pickupAvailability → startTime, endTime, closeTime

Stop

Instructions

Long Text Area (2000)

shipmentComments

User

*Company Name

Text(80)

name → requestor

User

*Email Sender Address

Email

requestor → contact → email

User

*Name

Name

requestor → contact → name

User

*Phone

Phone

requestor → contact → phone

*Fields marked with an asterisk are required to send a Dispatch request.

Sample Dispatch Request Payload

{
  "dispatchCode": "CREATE",
  "service": {
    "level": "STND",
    "delivery": {
      "date": "20240320"
    }
  },
  "shipmentComments": "PU: Pickup Instructions. Dlvy: Delivery Instructions",
  "payment": {
    "terms": "Third Party",
    "payer": "Third Party"
  },
  "pickupAvailability": {
    "date": "20240314",
    "startTime": "090000",
    "endTime": "220000",
    "closeTime": "220000"
  },
  "commodities": [
    {
      "packagingType": "PAT",
      "pieces": "3",
      "classification": "250",
      "weight": "650",
      "length": "48",
      "width": "48",
      "height": "48",
      "description": "Mixed"
    }
  ],
  "accessorials": {
    "codes": []
  },
  "referenceNumbers": {
    "bol": "214236691",
    "pro": "24601-42"
  },
  "origin": {
    "name": "SMC3 EVA Customer",
    "address": "2333 Waukegan Rd.",
    "city": "Bannockburn",
    "stateProvince": "IL",
    "postalCode": "60015",
    "country": "USA",
    "contact": {
      "name": "Joe SMC3 EVA Customer",
      "phone": "3129997777",
      "email": "donotreply@revenova.com"
    }
  },
  "destination": {
    "name": "Boston Beans",
    "address": "526 Beacon Street",
    "city": "Boston",
    "stateProvince": "MA",
    "postalCode": "02215",
    "country": "USA",
    "contact": {
      "name": "Joe Boston Beans",
      "phone": "3129997777",
      "email": "donotreply@revenova.com"
    }
  },
  "requestor": {
    "name": "Test Requestor",
    "contact": {
      "name": "User User",
      "phone": "8002723425",
      "email": "donotreply@revenova.com"
    },
    "billTo": {
      "account": "001RL000008rAcKYAU",
      "name": "SMC3 EVA Customer",
      "address": "2333 Waukegan Rd.",
      "city": "Bannockburn",
      "stateProvince": "IL",
      "postalCode": "60015",
      "country": "USA"
    }
  }
}

Sample Dispatch Response Payload

{
  "transactionId": "4e3b80b7-ce48-443a-ad82-1c84e43efcde",
  "scac": "SMCA",
  "referenceNumbers": [
    {
      "assignedBy": "Carrier",
      "type": "pickup",
      "number": "55667788"
    },
    {
      "assignedBy": "Customer",
      "type": "pro",
      "number": "1234578"
    }
  ],
  "messageStatus": {
    "status": "PASS",
    "code": "10000000",
    "message": "Transaction was successful.",
    "resolution": "",
    "information": []
  }
}

TMS Field Updates

Object

Field

Type

SMC3 Field

Load

API Load Id

Text(40)

transactionId

Stop (1P)

Pickup/Delivery Number

Text(200)

referenceNumbers → number

Cancel Dispatch

Loads that were dispatched to a Carrier may be cancelled with the Cancel Dispatch API call.

The Cancel Dispatch request is sent when one of the following occurs.

  • The Carrier is removed from a Load from the Carrier Banner LWC.

  • The Load Status is set to Canceled.

Add the PRO Number and Bill of Lading Number fields to the Load TMS15 Field Set. When the PRO Number and Bill of Lading Number are included in the Field Set they are cleared when a Carrier is removed from the Load.

TMS Fields Included

Object

Field

Type

SMC3 Field

*’TEST’ or ‘CANCEL’

dispatchCode

Stop (1P)

*Pickup Delivery Number

Text(200)

cancelUpdateInformation → pickupNumber

Carrier Quote

Removal Reason

Picklist

cancelReason

Load

Expected Ship Date

Formula (Date)

scheduledPickupDate

Load

PRO Number

Text(40)

proNumber

*Fields marked with an asterisk are required to cancel a dispatch.

Sample Cancel Dispatch Request Payload

{
  "dispatchCode": "CANCEL",
  "cancelUpdateInformation": {
    "pickupNumber": "55667788",
    "scheduledPickupDate": "20240314",
    "proNumber": "1234578"
  }
}

Sample Cancel Dispatch Response Payload

{
  "transactionId": "4e3b80b7-ce48-443a-ad82-1c84e43efcde",
  "scac": "SMCA",
  "messageStatus": {
    "status": "PASS",
    "code": "10000000",
    "message": "Transaction was successful.",
    "resolution": "",
    "information": []
  }
}

No TMS field updates from the Cancel Dispatch call.

The Load Status field returns to Quotes Received.

Status Notifications API

The TMS requests Status Notifications for Loads and SMC3EVA sends updates as push notifications to the TMS.

Load reference numbers are sent one at a time until a match is found. The order of fields is as follows.

  1. PRO Number

  2. Bill of Lading Number

  3. PO Number

  4. Pickup Number

If all four reference numbers do not match an error is generated that shows each number that did not match.

When a reference number matches a Load in SMC3 EVA, a success message displays. The Carrier Status Comments field updates to include, “Load Tracking Started - Matched on [Reference Number].”

To manually begin tracking a Load, select SMC3 EVA from the Tracking Provider picklist on the Load Tracking Administration modal. The Load Tracking Administration modal is located on the Carrier Banner.

Begin tracking the load by selecting the On button. Tracking updates are automatically retrieved based on the schedule set in TMS Admin, Configuration.

LTL Loads not dispatched with SMC3 EVA may also receive status notifications. Select SMC3 EVA as the Tracking Provider and set the tracking to On.

SMC3 EVA does not support ad hoc status update requests.

Tracking sessions begin automatically one day prior to the Expected Ship Date field on the Load. If tendering on the Expected Ship Date or the day before, Load tracking begins immediately.

SMC3 has a 20 day polling period for tracking and documents that begins when tracking is initiated. If manually starting the tracking of Loads, it is recommended to begin one day prior to the Expected Ship Date. If the Expected Ship Date changes after the polling period has started, the 20 day period does NOT change.

If the ship date for a load changes, the current tracking session is ended and a new session is created. A new transactionId field is returned from the SMC3 integration for the new tracking Notification session. Any notifications received for the previous tracking session are ignored by the TMS.

Tracking notifications are automatically enabled by the SMC3EVAJob. This job runs twice daily, every 12 hours.

The job also runs when a Load is created and has an SMC3 EVA Carrier Service AND the Expected Ship Date is more than one day in the future.

View the status of the job in the Job Monitor LWC.

The Carrier Status Comments field contains information regarding the scheduled or start of a tracking session. A Stop pickup date is not always provided as part of any Tracking Notifications. Pickup or Dropoff dates are only populated if provided as part of a Tracking Notification from SMC3.

Status Codes are sent from SMC3 EVA regarding Load actions. When a Status Code is received the following status fields are set accordingly.

  • Picked Up, In Transit, Delivered, or Out For Delivery, the first Stop Status is set to Departed.

  • Out for Delivery or In Transit, the last Stop Status is set to En Route.

  • Delivered, the last Stop Status is set to Departed.

TMS Operation

SMC3 Endpoint

Request Type

Response

Receive Tracking Updates

Status Notifications

GET

200: Success

400: Request Error

500: Unexpected Error

Inbound status notifications are processed as Platform Events.

TMS Fields Included

Object

Field

Type

SMC3 Field

Load

*Bill of Lading Number

Text(55)

bol

Load

*Expected Ship Date

Formula (Date)

pickupDate

Load

*PO Number

Text(100)

po

Load

*PRO Number

Text(40)

proNumber

Stop

*Address

Address

destination → country, postalCode

Stop

*Address

Address

origin → country, postalCode

Stop

*Pickup/Delivery Number

Text(200)

pickup

Sample Status Notifications Request Payload

{
  "transactionId": "3f5bd03f-7aa2-44a7-98e4-cd6e06787b18",
  "scac": "SMCA",
  "referenceNumbers": {
    "proNumber": "123456789",
    "bol": "444555678"
  },
  "shipmentInfo": {
    "weight": "6400"
  },
  "origin": {
    "postalCode": "60015"
  },
  "destination": {
    "postalCode": "02215"
  },
  "transit": {
    "pickupDate": "20240226",
    "delivery": {
      "estimatedDate": "20240229",
      "estimatedTime": "130000",
      "signature": "Joe Murphy",
      "appointment": {
        "date": "20240229",
        "startTime": "134700",
        "endTime": "134700",
        "notes": "string"
      }
    }
  },
  "status": {
    "code": "IN TRANSIT",
    "date": "20240229",
    "time": "105900",
    "carrierDescription": "Shipment is in tansit",
    "city": "Dayton",
    "stateProvince": "OH"
  },
  "messageStatus": {
    "status": "PASS",
    "code": "10000000",
    "message": "Transaction was successful.",
    "resolution": "",
    "information": []
  }
}

Sample Status Notifications Response Payload

{
  "transactionId": "3f5bd03f-7aa2-44a7-98e4-cd6e06787b18",
  "scac": "SMCA",
  "referenceNumbers": {
    "proNumber": "123456789",
    "bol": "444555678"
  },
  "shipmentInfo": {
    "weight": "1750"
  },
  "origin": {
    "postalCode": "30269"
  },
  "destination": {
    "postalCode": "40213"
  },
  "transit": {
    "pickupDate": "20240227",
    "delivery": {
      "estimatedDate": "20240227",
      "estimatedTime": "130000",
      "actualDate": "20240227",
      "actualTime": "134700",
      "signature": "Joe Murphy",
      "appointment": {
        "date": "20240227",
        "startTime": "134700",
        "endTime": "134700",
        "notes": "string"
      }
    }
  },
  "status": {
    "code": "DELIVERED",
    "date": "20240227",
    "time": "105900",
    "carrierDescription": "Shipment has been delivered to consignee",
    "city": "LOUISVILLE",
    "stateProvince": "KY"
  },
  "messageStatus": {
    "status": "PASS",
    "code": "10000000",
    "message": "Transaction was successful.",
    "resolution": "",
    "information": []
  }
}

TMS Field Updates

Object

Field

Type

SMC3 Field

Load

Last Reported City

Text(40)

city

Load

Last Reported State/Province

Picklist

stateProvince

Load

Load Status Comments

Text(255)

carrierDescription

Load

*PRO Number

Text(40)

proNumber

Load

Tracking Number

Text(40)

transactionId

Stop

**Appointment Time

Text(11)

transit → delivery → appointment → startTime, endTime

Stop

Carrier ETA Date

Date

transit → delivery → estimatedDate

Stop

Carrier ETA Time

Text(5)

transit → delivery → estimatedDeliveryTime

Stop

***Carrier Status as of

Date/Time

Not Sent by SMC3 EVA.

Stop

Departure Date

Date

transit → delivery → pickupDate, actualDate

Stop

Departure Time

Text(5)

transit → delivery → actualTime

Stop

Stop Status

Picklist

status → code

* The PRO Number field is only updated if the Carrier submits a different PRO Number in a status notification.

** The Stop Appointment Time field is only updated if blank on the last Stop.

** The Carrier Status as of Date/Time field is set by the TMS.

SMC3 Status Codes

Stop 1 Pick Up Status

Stop 2 Drop Off Status

Delivered

Departed

Departed

Exception

N/A

N/A

In Transit

Departed

En Route

Info

N/A

N/A

Out for Delivery

Departed

En Route

Picked Up

Departed

En Route

Unknown

N/A

N/A

There is no call to end a tracking session with SMC3 EVA. When a tracking session is ended in the TMS, all incoming status notifcations are ignored.

When a new tracking session is created, the existing tracking session remains active. A new transactionId field is generated and sent from SMC3 EVA for the new tracking session. Reasons for creating a new tracking session are any of the following.

  • Shipping Date changes on the Load.

  • The Carrier is removed from the Load and tendered to a new Carrier.

  • The Load is cancelled.

Error Logs are created for every status notification received for the original tracking session. The message in the Error Log indicates the reason for the notification.

If a tracking session fails to initiate, the transactionId field is captured from the error message. The Load Tracking Number field is updated so updates are associated with the correct Load.

Document Notifications API

The SMC3EVA integration sends Load documents into the TMS in .PDF format. Documents sent include the following.

  • Bill of Lading

  • Delivery Receipt

  • Invoice

  • Weight & Inspection Certificate

Inbound documents from SMC3 EVA are processed as Queued Transactions.

TMS Operation

SMC3 Endpoint

Request Type

Response

Receive Documents

Document Image Notifications

GET

200: Success

400: Request Error

401: No callback URL defined

404: Endpoint Resource URI Not Found

500: Unexpected Error

TMS Fields Included

Object

Field

Type

SMC3 Field

‘BL,’ ‘DR,’ ‘INV,’ or ‘WC’

documentType

Load

*PRO Number

Text(40)

proNumber

Transportation Profile

*SCAC

Text(6)

scac

Sample Document Notifications Request Payload

{
  "transactionId": "3f5bd03f-7aa2-44a7-98e4-cd6e06787b18",
  "scac": "SMCA",
  "proNumber": "204380071201",
  "documentType": "BL",
  "images": [],
  "messageStatus": {
    "code": "10000191",
    "message": "Your transaction has been received and is currently being processed.",
    "resolution": "Indicates that your request has been received and is currently being processed.",
    "status": "PASS",
    "information": []
  }
}

API Document Type

Value

BL

Bill of Lading

DR

Delivery Receipt

INV

Invoice

WC

Weight & Inspection Certificate

Sample Document Notifications Response Payload

{
  "transactionId": "3f5bd03f-7aa2-44a7-98e4-cd6e06787b18",
  "scac": "SMCA",
  "proNumber": "204380071201",
  "documentType": "BL",
  "images": [],
  "messageStatus": {

    "status": "PASS",
    "information": []
  }
}

No TMS Field Updates

Documents received are saved on the Load Documents section as .PDF files. If the file is too large for Salesforce to import an error message is displayed to the user.

In circumstances when a new session is created, the existing session remains active. A new transactionId field is generated and sent from SMC3 EVA for the new session. Reasons for creating a new session are any of the following.

  • Shipping Date changes on the Load.

  • The Carrier is removed from the Load and tendered to a new Carrier.

  • The Load is cancelled.

Error Logs are created for every status notification received for the original session. The message in the Error Log indicates the reason for the notification.

The Documents Notification call that imports .PDF documents into the TMS does not impact the Customer Invoice Documents Status feature.

Receiving documents from SMC3 EVA does not:

  • Mark documents as present in the CustomerInvoiceDocumentStatus Visualforce page.

  • Check the Customer Invoice Documents Received box on the Load.

If a document session fails to initiate, the transactionId field is captured from the error message. The Load Tracking Number field is updated so documents are added to the correct Load.

API Field Mapping

The following table relates TMS data fields with the equivalent SMC3 fields included in API calls.

Object

Field

Type

SMC3 Field

‘CREATE,’ ‘CANCEL’

dispatchCode

Account

*Account Name (billTo)

Name

billTo → name

Account

*Account Name (shipFrom)

Name

origin → name

Account

*Account Name (shipTo)

Name

destination → name

Account

*Billing Address

Address

address, city, country, postalCode, stateProvince

Account (shipTo, shipFrom)

*Shipping Address

Address

city, country, postalCode, stateProvince

Account

*TMS Type (CarrierBillTo)

Picklist

payer

API Accessorial

Code

Text(80)

accessorial → codes

Carrier Quote

Quote/Contract ID

Text(100)

estimate

Carrier Quote

Removal Reason

Picklist

cancelReason

Carrier Quote

*Service Level

Lookup(Service Level)

service → level

Contact (shipTo)

*Name

Name

contact

Contact (shipFrom)

*Account Name

Name

contact → name

Contact (shipFrom)

*Phone

Phone

contact → phone

Contact (shipFrom)

*Email

Email

contact → email

Line Item

*Handling Units

Picklist

commodities → packagingType

Line Item

HazMat Contact

Lookup(Contact)

hazardousContact

Line Item

Height

Number(16, 2)

height

Line Item

*HU Count

Number(18, 0)

pieces

Line Item

*Item Description

Text(255)

description

Line Item

Length

Number(16, 2)

length

Line Item

*NMFC Class

Picklist

classification

Line Item

*Weight

Number(18, 0)

weight

Line Item

Width

Number(16, 2)

width

Load

API Load Id

Text(30)

transactionId

Load

Bill of Lading Number

Text(55)

referenceNumbers → bol

Load

Customer Bill To

Lookup(Account)

billTo → account

Load

*Expected Delivery Date

Formula (Date)

delivery → date

Load

*Expected Ship Date

Formula (Date)

pickupAvailability → date, scheduledPickupDate

Load

Last Reported City

Text(40)

city

Load

Last Reported State/Province

Picklist

stateProvince

Load

Load Status Comments

Text(255)

carrierDescription

Load

*Payment Terms

Picklist

terms

Load

PO Number

Text(100)

referenceNumbers → po

Load

*PRO Number

Text(40)

proNumber, referenceNumbers → pro

Load

Tracking Number

Text(40)

transactionId

Stop

*Appointment Time

Text(11)

startTime, endTime, closeTime

Stop

Address

Formula (Text)

destinationPostalCode, desitnationCountry, originCountry, originPostalCode

Stop

City

Text(40)

city

Stop

Country

Picklist

country

Stop

Postal Code

Text(20)

postalCode

Stop

State/Province

Picklist

stateProvince

Stop

Carrier ETA Date

Date

delivery

Stop

Carrier ETA Time

Text(5)

estimatedDeliveryTime

Stop

**Carrier Status as of

Date/Time

Not sent by SMC3.

Stop

Departure Date

Date

transit → pickupDate, actualDate

Stop

Departure Time

Text(5)

actualTime

Stop

Instructions

Long Text Area(2000)

shipmentComments

Stop (first)

Pickup/Delivery Number

Text(200)

cancelUpdateInformation → pickupNumber

Stop

Stop Status

Picklist

status → code

Transportation Profile

*SCAC

Text(4)

scac

User

*Company Name

Text(80)

name → requestor

User

*Email Sender Address

Email

requestor → contact → email

User

*Name

Name

requestor → contact → name

User

*Phone

Phone

requestor → contact → phone

*Fields marked with an asterisk are required for the SMC3 EVA integration.

** SMC3 EVA does not provide time zone information. This field is set by Datetime.now().