Marty Zigman Marty Zigman
Prolecto Labs Accelerator Templates

Solved: Custom NetSuite Item Fulfillment Ship Notifications

NetSuite Reporting Technical

Tags: , , , , ,

This article is relevant if you are working with NetSuite and you want a professionally branded ship notification message.

Background


For yet another recent client NetSuite implementation, the customer had specific requirements for the ship notification message.  Since the release of NetSuite Advanced PDF templates, our inclination is to solve the  problem with this technology.  Strange enough, NetSuite does not offer the Item Fulfillment record type as a trigger mechanism.  They still make the “legacy” simple HTML approach or, if you have NetSuite Web Store, another simple HTML approach.  Yes, via Workflows, you can use a “Send Email” action and the reference a custom template.  The challenge with the Workflows approach is that you may not get all the data you need.  Typically, you are left with going to SuiteScript for a custom solution.

For our client, they need some information that was not available via this Workflow method.  From the item fulfillment, they needed the Bill To Address, the Item Rate (price), Packages and images of the items that were being fulfilled.  In this case, we need to get data from 4 sources:

  1. Item Fulfillment: basics of the actual item fulfillment
  2. Shipment Packages: the specifics of the packages including shipment tracking information
  3. Sales Order: provides the Billing address.
  4. Item Definition: provides references to the URLs of the images.  In our case, we will connect it to the sales order lines and use a join to the item table.

Solving the Ship Notification Challenge with the Content Rendering Engine

Fortunately, our practice has built a tool that makes these kinds of concerns trivial.  As discussed in a recent article, Supercharge NetSuite Advanced PDF/HTML Templates, we developed a tool that we call the “Content Rendering Engine” or CRE.  The tool basically allows our clients to describe as many searches needed to get data to the Advanced PDF Templates.  The basic technology allows a record (in this case, an item fulfillment transaction) to be used as the input into any number of saved searches.  Each saved search can also be used as the input for yet another saved search.  You can nest or go as deep as needed.  Once you have the data you need, you can then use the Template tools to produce HTML or PDF outputs.  It too can generate dynamic email and documents with attachments.

Triggering the Content Rendering Engine

Once your profile is defined and your template is ready, you then have options for producing the right trigger point.  We have made it flexible with ready-to-go event hook points:
  1. Workflow Action Script:  if desired, connect it to a workflow to be called when an item fulfillment moves to a desired state (e.g., shipped).  See example of how this is done.
  2. User Event: for the SuiteScript developer who likes to code, trigger via a traditional user event.
  3. Scheduled Script: if desired, fire the template at a specific time or as part of another larger operation.
  4. Custom Mass Update: should a bulk operation be desired, fire the profile against many records (e.g., monthly customer statements).
  5. RESTLet: if an external application needs data or should trigger the content, hook via REST.

Get the Content Rendering Engine

We have elected to not package the tool as a stand-alone product offering at this time.   We see so many use cases, we instead want to solve many challenges we see with NetSuite’s current Advanced PDF implementation.  We simply give this tool away to our clients free of charge.  In most cases, we offer hand holding to ensure our clients learn how to craft the saved searches and generate the template so the get the output they need.
If you have a unique PDF or HTML output challenge which can be solved with the Content Rendering Engine, let’s have a conversation.

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

More Posts - Website - Twitter - Facebook - LinkedIn - YouTube

About Marty Zigman

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

Biography • Website • X (Twitter) • Facebook • LinkedIn • YouTube

10 thoughts on “Solved: Custom NetSuite Item Fulfillment Ship Notifications

  1. sam says:

    Hello Marty,
    I had some doubt regarding the custom address in billing. can you please help me out?

  2. sam says:

    Hello Marty,
    I had some doubt regarding the custom address in billing in transaction quotes form. can you please help me out?

  3. Marty Zigman says:

    Hello Sam,

    Are you trying to reach out from the Item Fulfillment record to the Sales Order to grab the address record? If so, then yes, the content renderer engine will solve this.

    Marty

  4. Rajitha says:

    We are populating data into a itemFulfillment record. We have the full tracking URL for tracking the package. What is the name of the field to store the full URL for tracking against a package in an itemFulfillment record so that in NetSuite the user can click on it and be taken to the site to track the shipment?

  5. Marty Zigman says:

    NetSuite does not provide this information easily native. This is something we solve with our tools. You may be able to walk the createdfrom field to go to the sales order and then retrieve the tracking information — NetSuite copies it from the item fulfillment tracking array to the sales order.

Leave a Reply

Your email address will not be published. Required fields are marked *