Overview
The Dispatch & Job Management Module was developed to provide a central place where dispatchers can view all the information on a job, download and print all the supporting documentation, print a shipping label and mark it as shipped.
It works by including a barcode, either on the artwork itself or on a cover sheet added to the job on output. This barcode contains the URL to the Job Management page for that particular job. When that barcode is scanned and they are taken to that page they are presented with the following information:
- A thumbnail of the output file - They can use this as a quick sanity check to ensure the jobs match up
- Option to download the artwork file - When you click the thumbnail it will download the ordered artwork file, this can be used as a more detailed verification of the job they are dispatching.
- An option to download the Job ticket - This will download the corresponding job ticket
- An option to download the invoice - This will download the Catfish invoice for the whole order
- An option to download the Packaging Slip - This will download the Packaging Slip for the whole order
- An option to download the Shipping Label - Only compatible with our Easypost plugin, will request a shipping label and download it
- Set the job to Shipped - Will set this job to shipped
Setup Steps
This setup of this feature is fairly indepth and utilises many different features in Catfish to achieve the final product. It uses MegaScripts, Editable Content Areas, Easypost plugin (for the shipping labels), A MegaEdit product (for the cover sheet) and a MegaEdit script.
The steps below will walk you through all the steps needed to get this up and running on your storefront.
1. Setup the MegaScript
Firstly, in admin search for 'MegaScripts'. Once on the MegaScripts page you will see our library of hardcoded scripts available for use. You need to enable the one called 'Order Status Update'.
Once enabled, search in admin for 'MegaScripts' again and this time select the menu item called 'MegaScript Instances'. Select from the drop down in the top right the value 'Order Status Update' and then click on the 'Create' button and give it a name like 'JobManagement'.
NOTE: When naming this MegaScript instance, please do not use any spaces.
Ensure the enabled checkbox is checked.
Ensure the Trigger via API setting is checked.
Then in the Configuration editor beneath copy and paste in the following configuration:
{
editableContent: {
normal: 'Catfish.JobManagement.Default',
success: 'Catfish.JobManagement.Success',
ignore: 'Catfish.JobManagement.Ignore'
},
options: {
jobTicket: {
enabled: true,
text: 'Print Job Ticket'
},
packagingSlip: {
enabled: true,
text: 'Print Packaging Slip'
},
invoice: {
enabled: true,
text: 'Print Invoice'
},
shippingLabel: {
enabled: true,
embedded: false,
text: 'Print Shipping Label'
},
setAsShipped: {
enabled: true,
text: 'Mark as shipped'
},
},
carrierName: '',
serviceName: '',
customSuccessMessage: '',
tempHotFolderId: null
}
The configuration here allows you to determine many options based on your requirements
Job Ticket, Packaging Slip and Invoice
jobTicket: { enabled: true, text: 'Print Job Ticket' }
Set these to enabled: true if you want the ability to download each of the documentation types on your Job Management Module. Setting any other them to enabled: false will hide the button. The text is the label of the button that is shown on the Module, feel free to modify this to whatever suits for each.
Shipping Label
shippingLabel: { enabled: true, embedded: false, text: 'Print Shipping Label' }
Similar to the Job Ticket, Packaging Slip and Invoice options this works in conjunction with Easypost you for this to be enabled you must first have our Easypost module and have it setup and working.
The additional option on the Shipping Labels is the 'embedded: false' option. When set to true, before it is downloaded for you to use it will try to embed the shipping label onto a Packaging Slip. Attached is an example Packaging Slip with an image area designated for the shipping label. Pay close attention to the naming of the image field as this is how it knows where to put it.
Set as Shipped
setAsShipped: { enabled: true, text: 'Mark as shipped' }
To enable the option to set the job as shipped ensure this section is enabled: true and amend the text value as required.
2. Setup the Editable Content
We use a series of Editable Content templates to build up the UI for the Job Management Module.
First create a new Editable Content called 'Catfish.JobManagement.Success' (as per the configuration in step 1). Attached you will find a file called 'Catfish.JobManagement.Success.html' insert the contents of this file into that new Editable Content template.
Now create a second Editable Content called 'Catfish.JobManagement.Ignore' (as per the configuration in step 1). Attached you will also find a file with the same name and you need to copy and paste the contents of that HTML file into the Editable Content template.
Finally, we create the third Editable Content called 'Catfish.JobManagement.Default' (again, as per the configuration in step 1). Attached you will also find a HTML file with the same name - open this and copy the contents of the file into the Editable Content template.
3. Enabling the MegaEdit barcode scripts
This requires two MegaEdit scripts found by searching for 'Dynamic Product Scripts'. Again on that page in the library of Hardcoded scripts you need to enable the two scripts:
- Barcode Field
- Populate Barcode with job management page URL
As mentioned at the beginning of this article you need to decide if you are happy for the barcode to be added to the artwork itself OR if you want it to be put onto an additionally inserted cover sheet at the beginning of each job. Depending on which method you want to take, follow the relevant steps below:
Adding the barcode to the artwork
Ignore this section if you are not adding a barcode to your artwork directly. Jump to here if you want to use a cover sheet that contains the job barcode
Now navigate to your MegaEdit product in the admin as we need to configure these two scripts against the product. Once in the product click on the 'Scripts' tab and scroll down until you see the 'Barcode Field' option. Enable this.
Also locate the 'Populate Barcode with job management page URL' option and enable that too. Once enabled you also need to paste in the following configuration:
{
instanceName: "JobManagement",
barcodeName: "JobURL",
storefrontId: 2
}
instanceName: This references the MegaScript instance you created in the previous steps that will control the population of the barcode URL and the job management pages behaviour
barcodeName: This should be whatever name you give your barcode field when you add it onto the canvas in the front end.
storefrontId: This should be the id of the storefront you are setting this up and can be located in the top right corner of your admin pages.
Now, navigate in the front end to the product you have just configured the two scripts in step 3 against.
Now you need to add the barcode to your canvas. You can either add the barcode in a fixed location and not allow customers to delete it, or you can add it as part of your offered layouts that each are position depending on their choice. Either way, the barcode must be present and it must be of type 'Data Matrix' or 'QR Code'.
With the barcode added, you must also ensure it has the correct name applied to the field - as per the configuration example in step 3 - set it to 'JobURL'.
Now you should be in a position to test this. Simply place an order for your MegaEdit product. Once the output has created, navigate to Shared Print Operations and download it. Scan the barcode on a 2D scanner and it should open up your new Job Management pages.
Using a cover sheet for the barcode
Ignore this section if you are adding the barcode directly to your artwork
This approach works is by creating an independent MegaEdit product that includes the barcode and any other information you might want to display on it. We then, as part of the output creation process, insert this MegaEdit product at the front of all configured jobs. If you are ordering a job that has 20 pages, and your cover sheet product is 1 page and it is mapped correctly then you should expect to see an output file with 21 pages.
4. Create a cover sheet MegaEdit product
Create the MegaEdit product like you would any other. Decide on the canvas size you require, which will be used for all jobs and attach the relevant Output Types, Stock and Font categories.
Navigate to the 'Scripts' tab on the product and scroll down until you see the 'Barcode Field' option. Enable this.
Also locate the 'Populate Barcode with job management page URL' option and enable that too. Once enabled you also need to paste in the following configuration:
{
instanceName: "JobManagement",
barcodeName: "JobURL",
storefrontId: 2
}
instanceName: This references the MegaScript instance you created in the previous steps that will control the population of the barcode URL and the job management pages behaviour
barcodeName: This should be whatever name you give your barcode field when you add it onto the canvas in the front end.
storefrontId: This should be the id of the storefront you are setting this up and can be located in the top right corner of your admin pages.
Now, navigate in the front end to the product you have just configured the two scripts in step 3 against.
Now you need to add the barcode to your canvas. NOTE: It must be of type 'Data Matrix' or 'QR Code'.
With the barcode added, you must also ensure it has the correct name applied to the field - as per the configuration example in step 3 - set it to 'JobURL'.
NOTE: In order to populate the barcode correctly with the Job URL you will also need to enable the Standard Output Creation Script on the cover sheet product.

5. Enable the Cover sheet MegaScript
Similar to step 1, we need to enable another hardcoded MegaScript. So again, search for 'MegaScript' in admin and enable the script called 'Cover sheet with orderline id barcode'.
Once enabled, search again for 'MegaScript' and this time click on the 'MegaScript Instances' menu item. From the dropdown in the top right select 'Cover sheet with orderline id barcode' and click on 'Create' and give it a name like 'CoverSheetBarcode'.
NOTE: When naming this MegaScript instance, please do not use any spaces.
Ensure that the setting 'OutputCreation' is enabled.
Copy and paste the following into the Configuration section of the MegaScript Instance:
{
dpId: 2104, linkInstanceName: "JobManagement", barcodeFieldName: "JobURL", orderIdFieldName: "OrderId", orderIdPrefixInfo: "Order ID: ",
storefrontId: 22}
- dpId - This is the Id of the Dynamic product you created for the Cover Sheet in step 4
- linkInstanceName - This can be left as default if you have used all the samples provided in this article.
- barcodeFieldName - Again can be left as default if you have named your barcode field the same as we have suggested in this article here
- orderIdFieldName - If you added a text field to the Cover Sheet product to display the Order ID on the page as well then this should be the name of the field you gave it here
- orderIdPrefixInfo - If you added a text field to the Cover Sheet to display the Order ID then we also allow for a prefix to be added, for example "Order ID: " and so the final field value will be "Order ID: 7989"
- resizeBarcodeOutput - This will dynamically resize the coversheet to the size of the artwork that has been ordered. true/false.
- storefrontId - This is the ID of the storefront this is all being setup on
6. Assign the Cover Sheet
The last part - you'll be pleased to know :) - is to assign the MegaScript you enabled in Step 5 to whatever products you want this Cover Sheet applied to.
To do this navigate to your dynamic product in admin and click 'Edit'. Under the Product Properties tab if you scroll down to the 'Output MegaScript' dropdown and select the 'Cover sheet with orderline id barcode' (as setup in Step 5). And finally, click save.

Now you are in a position to test this, so simply place an order for your MegaEdit product that you assigned the MegaScript to in Step 6. Once ordered, navigate to Shared Print Operations in admin, and download the output file. Here you will see that the first page of that output file is the Cover Sheet you created and then you can scan this using a 2D printer and have it take you to the Job Management page for that job.