Proposal For WMS Customization Phase – 2 And Eshipz Integration

Proposal summary 

This proposal covers the solution to the following requirements of XSEED- Bulk printing of Shipping labels, Manifest Generation, Transporter integration Eshipz (VE002191 LOGIQ LABS PRIVATE LIMITED) and Shipping label changes. 

  Requirement 1 

Bulk printing of Shipping labels  

Bulk printing of Shipping labels happens. The shipping labels to be sorted by the following  
1. TRANSPORTER 
2. COURIER DETAIL 
3. ITEM 

Deliverables 

  • We will create a custom Suite let page in the XSEED account. 
  • In the Suite let page, we will add a list field to enter the wave number. 
  • User can enter the wave and click the print button. 
  • When entering a wave number to generate a shipping label, only the shipping label of the IF generated in this wave should get printed. 
  • We will create saved searches in script to get the sales order and its related IF generated from wave. Sorting of shipping label will be done in the search itself. 
  • We will add the search filter to generate shipping label only for Item Fulfillments with blank PRE-DISPATCH VERIFICATION DATE. 
  • We will generate shipping label in real time sorted in the priority transporter, courier details, item in the IF record. Here each shipping label will be in a separate page, first we show all the shipping label in which transporter is same. Then we again sort it by the transporter who have same courier details. And the shipping label is again sorted by the items in it.  User can download the shipping labels using standard print button. 
  • We will update the existing shipping label template in the XSEED account for bulk shipping label. The shipping label template used by XSEED is “JJ Custom Shipping Label PDF Template XEPL-81″.   
  • The page size of the shipping label template is 4.00 x 6.00 inches(A6-Landscape), which will have only 1 shipping label per page. 

Queries 

  • Could you please mention the roles in which the page should show? This page will not be available for external users. 
  • Could you please let us know the font size and font text needed for the shipping label? 

Assumptions 

  1. This custom Suite let page will not be available for external users. 
  1. We will update the existing shipping label template “JJ Custom Shipping Label PDF Template XEPL-81″ for bulk shipping label.  
  1. The shipping label page size is A6. Please confirm. 
  1. We assume that shipping label will print only for Item Fulfillments with blank PRE-DISPATCH VERIFICATION DATE. 

Limitations 

  • If there is large number of shipping label are to be processed in real time (greater than 100), then there can be performance issues and maximum suitelet execution time is 5 minutes. The correct count of shipping labels can print will get, during the development stage only.  
  • If generating shipping label count is greater than the maximum count (correct count will get during the development stage), we need to create the shipping label by scheduling process (map-reduce script). It may require additional effort. 
  • The shipping label page size is A6. As there are new fields added as well as if the address size and item description are too lengthy, there is a chance for pagination in the proposed shipping label template. 

 Requirement 2 

Manifest Generation 

At the time of loading, barcode for transporter waybill for all boxes/ option of adding total boxes to be scanned. This should generate a manifest with time stamp, Order details, Carton Box Details, Weight, and Waybill Number. Option to also rescan box item labels to be available. 

Deliverables 

  • We will create an icon for Manifest generation in the WMS page and when we click on the icon, we will enter to custom suitelet page.  
  • In the Suite let page, initially user must scan the Waybill barcode from the shipping label and it will show a sub list that contain the scanned waybill numbers. 
  • If the user scans the same waybill number on the different carton box in the IF, we will show an alert “waybill already scanned”. 
  • After scanning all the necessary waybill barcode, then user can Click on the submit button. 
  • Then it will show a success message and generate a custom record entry in the NetSuite in real-time and this record id will be shown to the user who did the scanning. So, the user can later navigate to this custom record entry to print the manifest. 
  • The custom record will have the following fields:  
  • Waybill number (Rich text) – to store the scanned waybill numbers. 
  • Starting index – When the custom record created, we will create a search of custom record in the script to find the starting index of manifest number (unique number) from the ending index of last generated custom record entry and we will set during creation. 
  • Ending index – We will set the ending index field in the custom record with the last number of the manifest print using calculation. 
  • Fulfilments (Multi select) – used to link with the IF 
  • So, to take the print, go to custom record entry, that we have created through WMS manifest scanning in the NetSuite account.  
  • There is a custom “Print” button for printing the manifest in the custom record. 
  • We will create an IF search in script to get all the details to generate the manifest as an object. If the waybill has multiple IF, and manifest already generated for any IF, we will not consider that IF in the search. 
  • The page size of the manifest template is A4-Landscape, which will have only 1 manifest per page. 
  • A separate manifest page will be generated for each TRANSPORTER & COURIER DETAIL combination. 
  • The manifest created will be stored in NetSuite as custom record entries with a unique Manifest number 

The manifest print will be look like below.  

  • We will link the custom record entry with Item fulfilment record. 
  • If the user prints the same custom record entry multiple times, the print will be the same manifest with its unique number. 
  • If the transporter is not picked up the IF items, we suggest to inactivate the custom record instead of deletion. The starting index of the next custom record will be the continuation of the last index of inactive custom record.  
  • It is also possible to activate the inactive custom record entry details, and you can reuse the same manifest if the transporter will come again. But in this case, you need to re-verify the IF details in the manifest before loading to truck. 

Assumptions 

  1. We assume that  we can scan  approximately 100 waybill at a time using the suitelet page. We will get the correct count of possible scan during the development stage only. 
  1. We assume that the items in the carton are inventory item or assembly item. 
  1. We will include both RFID and camera scanning in manifest generation scanning. 
  1. The manifest print layout and design will be look like the same in the proposed solution, any changes in the design will be considered as additional scope. 
  1. We will fetch the total carton number and total carton weight from the IF record using calculations. 

  6.  We will set the total carton number as the maximum number in the carton detail subtab list and total carton weight will be taken from total item weight (hidden field). Please confirm 

      7. We will set the header in all manifest pages even if for the same transporter and courier combination. 

     8. We will set the footer (signature part) only in the last page of manifest for one transporter and courier combination. 

Limitations 

  • There will be scanning limitation for number of waybill to be scanned using the suitelet page. We will share the correct count of possible scan during the development stage. 
  • There will be slow performance in scanning the waybill barcode using camera based. It require more time to scan other than RFID based. 

  Requirement 3 

Transporter integration Eshipz (VE002191 LOGIQ LABS PRIVATE LIMITED) 

Process:  

1. Once an item fulfillment with Transporter as VE002191 LOGIQ LABS PRIVATE LIMITED is marked to shipped stage- the order details to be pushed to Eshipz portal and Output to be pushed back to Netsuite Item fulfillment using the APIs. 

2. If the shipment is not successful, the Item fulfillment status to remain in picked/ packed stage as is done for Bigfoot retail integration with Netsuite and error to be captured in “INTEGRATION ERROR” field 
 

Transporter allocation 

  1. The custom record Pin Code wise Transporter along with script is used for auto allocating Transporters in item fulfillment 

       b.   Configuration to be added: We need to add Eshipz as a transport vendor in the drop down and update the script so that when Eshipz is allocated to a pin code, corresponding created item fulfillments should get VE002191 LOGIQ LABS PRIVATE LIMITED allocated as Transporter as per current script. 

Deliverables 

  • We will update the TRANSPORTER < 8KG and TRANSPORTER > 8KG field in Pin Code wise Transporter by adding  Eshipz in list as a transport vendor in the drop down 
  • XSEED team will update the custom record Pin Code wise Transporter list to allocate the Eshipz transporter according to the Pincode. 
  • We will update the existing client script “XS_CL_TRANSPORTER_ITEM_FULLFILL” and map-reduce script “JJ MR Transporter allocat WMS XSEED-362” so that when Eshipz is allocated to a pin code, Transporter field in the Item Fulfilment will be allocated as VE002191 LOGIQ LABS PRIVATE LIMITED. 
  • We will deploy a user event script to integrate the Eshipz using the API and fetch the response and update the IF accordingly. 
  • When an item fulfilment with Transporter as VE002191 LOGIQ LABS PRIVATE LIMITED is marked to shipped stage- the IF details will be pushed to Eshipz portal and Output response will be set in Item fulfilment using the API provided in the requirement document. 
  • We will create a custom field “ Eshipz Label URL” in the Item fulfilment to set the url of shipping label. The user can download the shipping label from the field. 
  • Error Handling: When the shipment is not successful, the Item fulfillment status will be updated to picked and error will be captured in “INTEGRATION ERROR” field in the Item fulfilment. 

API Reference: 

API Document: Create Shipments Based on Defined Rules 

Field Mapping : Eshipz Field mapping with Netsuite – Google Sheets 

Field Mapping of output captured from EShipz. 

Output Netsuite Item fulfillment field in which this detail is to be captured 
“awb” PARENT WAYBILL NO. 
“slug” COURIER DETAIL 
https://track.eshipz.com/track?awb=<awb> TRACKING WEBSITE 
“url” Shipping labels 
package_series To be mapped into “CHILD WAY BILL NO” fields in carton details 

Assumptions 

  • We assume that there is no limit in the address length for sending address data to Eshipz. 
  • We will round off the weight field to Maximum 2 decimal places. 
  • We will extract last 10 digits from Customer Phone field in item fulfillment to remove spaces & special characters. 
  • We assume that the fields ‘vendor_id,’ ‘Slug,’ and ‘service_type in data request will be always null. 
  • When the shipment is not successful, the Item fulfilment status will be updated to picked status and error will be captured in “INTEGRATION ERROR” field in the Item fulfilment. 

Limitations 

  • We are using the API “Create shipment based on defined rules”. If the sending data do not satisfy the defined rule, there will be an error and request will not send to the Shipment portal. 
  • The required fields are mentioned in the mapping document and if they don’t have values, the request data may fail to send. 
  • Eshipz API updates in future might affect integration functionality. 

 Requirement 4 

Shipping label changes 

Modifications in Shipping label are proposed as attached- to be discussed 

 
The modified label to be accessible using the print shipping label button on item fulfilment 

The modified label to be accessible on the custom page for bulk printing-

 
Deliverables 

  • We will update the restlet script to render the data from the Item fulfilment record for printing the bulk shipping label using the custom page. 
  • We will update the existing shipping label template in the XSEED account for bulk shipping label. The shipping label template used by XSEED is “JJ Custom Shipping Label PDF Template XEPL-81″.   
  • The page size of the shipping label template is 4.00 x 6.00 inches(A6-Landscape), which will have only 1 shipping label per page. 
  • The modified label will be accessible using the print shipping label button on item fulfilment 
  • The modified label will be accessible on the custom page for bulk printing  

Field Mapping 

PDF Fields NetSuite Item fulfilment field  
Shipping Address Ship Address 
SO NO SO Document Number 
IF No  Item Fulfilment Number 
Date IF Date 
Carton Weight (KG) Total Carton weight (calculation in PDF) 
Shipment Charges 
Docket PARENT WAYBILL NO. 
Transporter Name Transporter 
Courier COURIER DETAIL 
QR Code Transporter way bill number as QR code 
This box contain (Item) Item quantity and Item description in the Carton detail sublist 
Shipping Child AWB Code CHILD WAY BILL NO. 
  
Count Of Boxes Carton No in Carton detail / Carton No 
Return Address Ware house Address 
The item is being sent Please provide full address to set in the field 

New Proposed Shipping label  

Assumptions 

  • We will update the existing shipping label template “JJ Custom Shipping Label PDF Template XEPL-81″ for printing the shipping label.  
  • The page size of the shipping label template is 4.00 x 6.00 inches(A6-Landscape), which will have only 1 shipping label per page. 
  • We will set the barcode of child waybill if the child waybill number present in the carton box. If the child waybill is not exists, the barcode field will be blank in the PDF. 
  • We assume that the barcode type used for parent waybill no and child waybill number is code 128. 

Limitations 

  • The shipping label page size is A6. As there are new fields added as well as if the address size and item description are too lengthy, there is a chance for pagination in the proposed shipping label template. 

Estimated Effort 

160 Hours 

Key Task Time  
Analysis Script Analysis Field Mapping    4h 
   3h 
   1h 
Bulk Printing- suitelet page  Submit action 
PDF Update 
  4h 
  16h 
  12h 
 Manifest  – Icon 
Suitelet page and Scanning, camera/RFid 
Custom record Creation 
Submit action Print template Print Action 
 
   2h 
   16h 
       2h 
   8h 
   4h    12h 
Pin code Custom record update 
Transporter allocation development 
Transporter integration 
  1h 
  6h 
  24h 
Shipping Label PDF template changes 
Bulkfulfilment Custom Page 
 
  4h 
  16h 
Testing     8h  
Move to production    12h 
Documentation     1h  
Total     160 hours 

Leave a comment

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