1. Home
  2. Docs
  3. Salesforce
Live Chat

Salsforce Shipping Quotes & Delivery Dates

Get quotes and estimated delivery dates for shipments using the Wizard or Process Builder.


Install Multi-Carrier

To install, begin by going to the Salesforce AppExchange and finding the Multi-carrier for Salesforce listing. You can find the app through Search or by clicking this link.

Click on the Get It Now button and select the desired destination (sandbox or production). Multi-carrier for Salesforce can be installed in both Sandbox (does not expire) and Production (7 day trial) instantly. Click Continue.


Preference Setup

If you want to test the shipping functionality then we recommend using our test FedEx preference (this is because FedEx offers the most friendly test environment). By using this test preference you won't be charged for any of your test shipments.

You can add this by going to Zenkraft Settings and turning on Demo Mode and then clicking the "Create FedEx Test Preference" button.

Otherwise please do go ahead and add your own preferences. Make sure Demo mode is off though, otherwise you might see some authentication errors.


Rates and Estimated Delivery Dates Using the Wizard

Go to the Shipments tab and click on New

Next fill in the details of the recipient

The next section is your package type and service type, and the number of packages and the weights.

The weight plays a very big part in the rates that you get back from the carriers. Also if you have large bulky items its always best to include the dimensions as occasionally those details also have an effect on the total cost of a shipment.

If you need to add any special service then you can use that section to select your requirements. Once thats done, just select calculate rates button to generate the rates.

If you have filled in all the required information correctly you will then see the rates displayed:

At this point its quick to create the shipment as well just by cliking on the Ship button.


Getting a rate using Process Builder

Our invocable method allows you to create a rate request from any object that you have set up a Custom Address Source for using Process Builder. If you haven't set up a Custom Address Source then please follow this guide that explains how to do so.

In this example we will create a rate request from an Opportunity object when the Status field on the Opportunity gets set to "Proposal/Price Quote".

Step 1. Add 4 fields onto your object

Add 4 custom fields onto your object (Opportunity in our case) where you will store the returned rate information.

We recommend something like this:

Step 2. Set all required fields in your Custom Address Source

In your Custom Address Source you will need to have these items set as a minimum*:

Recipient Address Fields

  • Name Field
  • Street 1 Text Line Field
  • City Field
  • State Field
  • Postal Code Field
  • Country Field
  • Phone Field

Billing Field

Payment Type Field: the value of this field can be set to SENDER, RECIPIENT, THIRD_PARTY


Preference Name Field: the value of this field can be set to the name of the preference (e.g. "ShipmatePreference-0000")

Ship Date* (only required for FedEx)

Ship Date Field : ensure this is a date field. If you want to use todays date, just add this value to the formula field - TODAY()

Service Types

Service Type Field: such as FEDEX_2_DAY, FEDEX_GROUND, FIRST_OVERNIGHT. (FedEx Service Type Examples)

Package Types

Package Type Field: such as FEDEX_BOX, FEDEX_ENVELOPE, YOUR_PACKAGING. (FedEx Package Type Examples)


You must add at least one package row. Fields needed are Quantity, Weight, and Declared Value.

Output Fields

This section defines which fields on your original object (in our case the Opportunity object), you would like the rate information that is returned to be populated to.

  • Output Delivery Date Field: Expected delivery date
  • Output Delivery Day Of Week Field: Expected Delivery day of the week
  • Output Service Name Field: Service Type that was chosen
  • Output Delivery Days Field: Number of days to deliver
  • Output Net Charge: Estimated shipment cost

Step 3. Process Builder Task

Create a Process Builder Task by going to Setup > Create > Workflow & Approvals > Process Builder and click the New button.

Give the process a name, description and choose to start the process when "A record Changes".

Next choose the object you are starting the process from. Remember in this guide, we are using the Opportunity object, and we will be running the shipment creation once the Opportunity StageName gets set to "Proposal/Price Quote".

Make sure you set to "Start the process" to be "when a record is created or edited". Click Save, and then select "Add Criteria".

Fill in your requirements for when the shipment process should start. In this guide we are going to check that the Opportunity StageName gets set to "Proposal/Price Quote".

Click Save.

Next add an Immediate Action. The Action Type will be "Apex", and the Apex Class will be "Get Rate".

You will then be able to set the Apex Variables.

For the customAddressId please set it to the Custom Address Source ID that you are running this process from. To get this ID, navigate to your Custom Address Source and copy the last part of the URL. If you are in lightning just use the first 15 characters of this objectId.

For the recordId please set the Type as Field Reference, and the Value to be the Object ID. In our case it will end up being the Opportunity ID.

Your screen will now look like this:

Click Save, and don't forget to Activate this Process Builder.

That is all set, you will now be able to have rates information populated back onto your object via Process Builder.

Once you have activated the Process Builder, go to an Opportunity, change its Status to “Proposal/Price Quote” and your rate information will appear on your object.



Now it is time for you to test.

If you have any queries then please contact us and we will be happy to help