1. Home
  2. Docs
  3. Guides
  4. Additional Documents
Log a Case

International Documents, Packing Slips, and More

Generate documents, such as commercial invoices or packing slips with your shipments.

Commercial Invoice Templates

Many carriers require a Commercial Invoice template to be set up for international shipments.

To set up a CI template go to the Multi-Carrier App and click on Shipping Forms.

In Shipping Forms click on New Commercial Invoice.

In the pop-up window start filling in the fields. We generally recommend filling in the Description, Reason for Export Once ready click Save.

Commercial Invoice Dynamic Fields

There are many fields which can be set on a Commercial Invoice dynamically from the Custom Address Source.

Open the Custom Address Source used for international shipments and scroll down to Carrier Specific Fields.

Under Carrier Specific Fields you can find pre-set templates for FedEx and UPS Sold To related fields.

There are other Commercial Invoice related fields for UPS and FedEx which can be added separately.

UPS Sold To Fields

Once the UPS: Commercial Invoice SoldTo Fields template is selected a list of fields will appear where you can map the relevant information.

DHL Express

Some of the more commonly used CI related fields are:

  • DHL Express: Terms Of Payment
  • DHL Express: Terms of Trade
  • DHL Express: Duties & Taxes Paid
  • DHL Express: Paperless Trade
  • DHL Express: Remarks
  • DHL Express: Sender/Tax ID
  • DHL Express: Recipient/Tax ID

Carrier Specific Information

Some carriers require additional information to be added or set up on the Commercial Invoice.

FedEx Signature and Letterhead

Electronic Signature and Letterhead are required by FedEx. You need the set this up on the Preference. Go to Shipping Preferences and select your FedEx preference.

Click on the arrow and select FedEx Setup Signature and Letter Head.

Upload a new image by clicking on the + sign.

Once the images are uploaded match the right image to the right function.

Generate Packing Slips

Packing slips can be generated in two different ways: either using the Custom Address Source or by an invocable method.

Select and/or modify the template

The following templates are already included and can be found under Setup > Visualforce Pages:

  • PackingSlipPDFTemplatePage
  • PackingSlipZPLTemplatePage

If you want to customize these templates then you need to create a new Visualforce page, copy the template text and paste it to the new page. Now you can add your customizations, however make sure to update all Multi-Carrier related fields to include the "zkmulti__" prefix.

From this:

To this:

Enable show products setting

Enable Boxing Algorithm - Show Products under Setup > Custom Settings > Zenkraft General Settings. From v1.108 this setting is called Show Products in Wizard.

Add the packing slip to the custom address source

Once you have the template ready, go to edit the Custom Address Source, and scroll down to Enhanced Functionality Settings. Click Add, then select the following items:

  • All Carriers: Packing Slips Template - add the template API name as a static value
  • All Carriers: Packing Slips Extension name - add the extension type as a static value

NOTE: If you are using the existing template make sure to add the "zkmulti__" prefix, or if you are using a custom template the "c__" prefix.

There is also an option to use conditional packing slips. For example, if you need different templates for different countries, warehouses, or carriers, you can create them one by one and then set up a formula field to decide which template to use.

In this example we are deciding the template based on the carrier:

And then mapping this field in the Custom Address Source:

With these all set, packing slips are now generated automatically when the shipment is created.

Generate the packing slip using the invocable method.

When shipments are created using the Bulk Ship method the packing slips have to be generated using the invocable method.

Create a new Process Builder and select the Zenkraft Shipment object. The process should start when a record is created or edited.

The criteria should be when the Shipment Processing Completed checkbox is set to true.

Next add an immediate action with Apex action "Generate Document (Multi Carrier)".

Add the documentType, shipmentId, templateName, templateExtension, and the isAutoPrint (if needed).

The document type should be packing_slips, the template name is the name of the Visualforce page using the appropriate pre-tag.

In this example we are using a custom PDF template and setting the auto printing to true. This means that once the packing slip is generated it will be printed automatically.

Activate the Process Builder.

IMPORTANT NOTE: In case you are doing both bulk shipping and regular shipping, please only use the invocable method and remove any packing slip related configuration from the custom address source.

Certificate of Origin

It is possible to generate your own certificate of origin using our PackingSlipController. However, you should to keep the following in mind:

  • You are not going to be able to generate a packing slip too
  • This document will not be automatically electronically transmitted to the carrier
  • We currently do not supply a template for this within the application so you might need to contact our support team to provide you our template or create your own

For setting up the Visualforce page and mapping the template in the Custom Address Source please refer to this guide.