1. Before you start!
These are the three objects you are going to interact with once you have installed our USPS Shipping App.
2. Install the App
Please install the USPS Shipping App from the Salesforce AppExchange. The most important part of installing our app from the app exchange is to make sure that you "Install for All Users" when you get to that screen.
If you are having trouble installing our app please follow this more comprehensive guide.
3. Add the Preference
Once you have installed the app, you need to create a USPS Shipmate Preference.
If you already have an Endicia account you will be able to add it using the "Add Existing Endicia Account" button.
You will need your Account ID and Pass Phrase to do this.
Otherwise choose "New USPS Express1 Billing Preference" for Express1 or "New USPS Endicia Preference" button to be taken to the new preference page.
Full in depth steps for setting up an Express1 or Endicia Preference can be found here.
If you want to try out the functionality of the app without creating any chargeable labels you will need to create a custom setting to set Demo Mode to "On" first, and then after that create the Preference.
To do this please go into Setup > Build > Custom Settings
And click on the Manage link next to "USPS Shipmate General Settings".
You will now see the page below, go ahead and click on the New button.
Enter a name (we suggest demo mode), and click the "Run Demo Mode" checkbox as you can see below. Then click Save.
We are now ready to create test shipments and you will not be charged for them.
4. Create a Lookup Relationship
Choose a standard or custom Salesforce object you want to start creating shipments from.
We are going to choose the Case object for this tutorial, but the process is exactly the same for any object you want to use.
Go to Setup > Create > Objects
and click on the "USPS Shipment" object:
We need to create a Look Up relationship to the Case object. So click on the "New" button as you can see here.
Select Lookup Relationship:
Choose the object you want to ship from, in this tutorial we are use the Case object:
Click "Next", and then fill out the Field Name.
Click "Next" and set all profiles to have visibility:
Click "Next" to get to this page:
Clicking "Next" again you get to the final page, where you can name your "Related List Label". This defines what your users see on the page layout. So if you want to create a one click solution for return labels then it would be a good time to give the label an appropriate name.
Finally click "Save".
5. Create fields on your standard/custom object
First we navigate to the Case object, and we click on the View Fields from the pullout.
We now need to create custom fields on the Case object that will be used to set the default fields on the Shipping Wizard page.
The minimum amount of fields we need to have to create a Shipment is as follows:
Name, Company Name, Phone Number, Email Address, Street Address, City, Zip/Postal Code, State, Country
We then also need the Service Type (First, Priority, Express, etc), and Packaging Type (Parcel, Letter, Card, etc).
And finally we need the Package weight, and depending on the package and service type you might also need length, width, height.
The Case Object already has Name, Company Name, Phone Number, Email Address so we don't need to recreate those. But we do need to create the other fields.
Here is the step by Step guide on how to do this, we will start with Street Address:
- First step is to click on the "New" button under the Case Custom Fields and Relationships section:
2. Select "Formula", and click "Next"
3. Fill in theField Label and choose "Text" as the Return Type, and click "Next"
4. Choose Advanced, and find the Mailing Street field that is related to the Contact.
It should look like this:
5. click Next, and you are then taken to the field level security page. We advise to allow giving visibility to all profiles.
6. Click "Next" and you will be taken to the PageLayout screen. Its useful to show these fields we are creating until we have this whole process working correctly.
7. Click "Save and New".
Do these same steps 2-7 for the other fields; City, Zip/Postal Code, State, Country.
For the Service Type and Packaging Type fields you need to still create a formula field, and in the formula section enter the value surrounded by "". Like so:
These values for Service Type and Packaging Type can be found on this page here.
Finally you need to create formula fields for the Package weight, length, width, height, declared value. Make sure that these fields are of type number:
We now have the fields required to create a shipment from the Case object, we can move on to creating a new Custom Address Source.
6. Create the Custom Address Source
First we navigate to the Custom Address Source tab, and click on New Custom Address Source and we are presented with this screen:
Give this Custom Address Source a Name, and from the Object dropdown select the object you are integrating with. We will choose "Case".
Note: if you have more than 1000 objects, you can use the "Object Quick Search" to more easily find your object.
Next select the "Shipment Object Lookup Field" that we created in Step 4. (the look up field).
You are now able to add the fields that you created in Step 5 to this Custom Address Source object.
Start with the Recipient Address Fields to look something like this:
Next, populate the Service Types and Package Types and Packages fields:
This is the minimum information you need to populate to successfully create a shipment.
We recommend enabling the Auto Shipment and Auto Print feature so that you can achieve 1 click shipping and printing directly from your object (Case object for this tutorial).
Click Save, and you are now ready to create a shipment from your object of choice.
Just go to your object and you will see a USPS Shipments related list. Click on New USPS Shipments.
If there are any errors they will display on the Shipment Wizard.
7. Assign Licenses to your users
Note: This is only valid for Production instances, your Sandbox instance will not have this requirement.
Any user that needs to create shipments or view shipment information needs to have a license assigned to them.
To assign users to the USPS Shipmate App, please go to Setup > Build > Installed Packages and click on Manage Licenses next to "ZenKraft Shipmate - USPS for Salesforce".
Then click on the Add Users button, to add as many users as you need.
8. Scheduled Tracking
To get tracking updates for shipments that are being created you need to set up scheduled tracking.
You can do this by going to the USPS Shipments tab, and clicking on Schedule Tracking.
If you see this message:
Please click the Initialize button.
You will then be able to set the Start and End time, Track days and the Frequency you want the updates to be run.
Click Save, and this step is now done.
9. Email Labels
One you have created a shipment its very easy to email a label.
Just click on the "Email Label" button on the shipment you have created:
You can then edit the subject and body of the message to send.
Click "Send Email" and the email will be sent.
10. Label Printing
To print directly from Salesforce using our Print page or Automated Printing via Custom Address Source, you first need to install our printing desktop app.
We will address Windows Printing in this guide but if you need to print from a Mac, please follow this guide instead
NOTE: Zenkraft Desktop printing only supports PDF and thermal (ZPL/EPL) label types
1. Download the Zenkraft Windows app
2. View or create a preference
- Open the Shipmate Preference and click "Manage Printers"
- This links will take you directly to the "Manage Printers" page in Salesforce:
If you are unable to see this button then click "Edit Layout" to drag the "Manage Printers" button onto the page layout.
You are also able to access the "Manage Printers/Scales" button from Shipments View.
If this button is not available then you need to add the button to the search layout, which you can get to by going into Setup > Create > Objects > USPS Shipment and then edit the Search Layouts > Shipment List View.
You can then add the Manage Printers button to the layout.
This link will take you directly to the respective "Shipment" object page in Salesforce:
3. Manage printers
- On "Manage Printers" you will see the Zenkraft Shipmate client username and password has already been generated. These are the credentials that users who need to print should will need to input onto their desktop app. Note: "Manage Printers" can be accessed through the Shipments tab. To modify which buttons are shown on the Shipment object pages, we need to go into Setup > Create > Object > USPS Shipment > Page Layouts > Edit
- Open Zenkraft Shipmate application and sign in using username and password found in the previous steps.
4. Set default printers
After you successfully sign in, all printers from your computer will be available for selection on the Manage Printers page. From here you will be able to set the default printer for Thermal Shipping Labels, Non Thermal Shipping Labels, Shipping Documents. You can do this on a global, preference or user level.
- Thermal Printing Tab: any shipping labels that are created in ZPL or EPL format will be printed using these defaults.
- Non Thermal Printing: any shipping labels that are in JPEG/PNG/PDF/GIF (non thermal) will be printed using these defaults.
- Other Documents e.g. international documents, bills and anything else will be printed according to these defaults.
Each of these sections includes a Global, Preference and User level.
If you have a default it will override the Preference default. Selecting a preference default will override the global default.
Please let your network administrators know that the Zenkraft Print App needs to be able to connect out via port 6123.
Once this is all set up, you are now able to print directly from Salesforce by using the Print Labels and Documents button
If this button is missing from your Shipment object view then you need to go into Setup > Create > Object > USPS Shipment > Page Layouts > Edit
and drag the button onto your page layout
This link will take you directly to the respective "Shipment" object page in Salesforce:
You are now able to print directly from salesforce by clicking on the Print Labels and Documents button