PROPOSAL FOR NETSUITE-CRANE WORLD INTEGRATION

Proposal Summary
This proposal summarizes the solution for implementing the NetSuite-Crane World
integration to integrate the NetSuite orders with Crane world. Whenever a new sales order
is created in NetSuite and approved, we will create the same order in Crane world and when
the shipment of the order is taken place in Crane, we will create corresponding item
fulfilment in NetSuite. Similarly, for keeping the item stock sync between NetSuite and
Crane world, we will perform inbound order sync (Purchase order sync)
Requirement
The Corp team wants to integrate their sales orders with the Crane world, which is a warehouse
management system to regulate their warehouse activities.
Our Solution


Outbound order integration

Whenever a new sales order is created in NetSuite and approved, we will create an
outbound order in Crane world corresponding to this NetSuite sales order.
• We will develop a User Event script that creates outbound order in Crane when a
new sales order is created in NetSuite.
• Outbound order will be created only for the orders in status “Pending Fulfilment”.
• In NetSuite, we are able to give line level location to each item in the sales order. But
in Crane, this is not possible. So, while creating outbound order for a NetSuite sales
order, we will group the items in sales order based on the location (Hialeah Garden /
Irving Dallas) and create 2 different outbound orders;
o one with project look up code Corp Design-Mia which includes items in
location Hialeah Gardens and another with project lookup code Corp DesignDFW that includes items in location Irving Dallas

Limitations in Outbound order integration:


• It takes a delay of about 10-15 minutes for an outbound order to create in Crane
world when we create it using the API end point. Even if we get a success response
for the API call for outbound order creation, we cannot confirm if the order is
successfully created in Crane world. If any error is occurred in the process and the
outbound order creation got failed, the system autogenerate an error email and only
based on this email we can confirm if the order is created or not in crane.
• That is, if we get an error email for the created outbound order, this means the
order creation is not successful in crane and we will then solve the error occurred
and then re perform the order creation.
• If a sales order in NetSuite contains items other than inventory item and kit item, we
will not be mapping those items to the outbound order in Crane since we are not
syncing other items in Crane other than these 2 item types. So, Corp team need to
handle the fulfilment of other items.

Shipment Confirmation:


• When the order is shipped from the warehouse, we will get a response for the API
milestone “Shipment confirmation.
• To check if the order is shipped, we will deploy a schedule script and at regular
intervals the script will call the “Shipment confirmation” API. And, when we retrieve
a response to the API call, we will then create item fulfilment for the shipped
item/items in NetSuite.
• We will check using the document number of Sales order if it’s shipped from Crane
with the help of Shipment confirmation API, and if shipped we will create IF and
exclude this document number from the further script executions.
• The status of IF created for the shipped items will be “Shipped” in NetSuite.
• In the API response we receive for the shipment confirmation API, it lists the items
shipped with order line and quantity shipped. Using this information, we will create
item fulfilment for the shipped items with shipped quantity from corresponding sales
order.
• If there are multiple shipments in Crane (partial shipment), then we will create
multiple fulfilments in NetSuite as well.


Inbound order integration:


• When inventory added to items synced with Crane, in order to keep the stock level
sync between NetSuite and Crane we need to perform inbound order creation.
• So, whenever a purchase order is created in NetSuite or inventory adjustment is
performed, an inbound order corresponding to this will be created in Crane world.
• We will develop a User Event script to create inbound order in Crane whenever a
new purchase order is created in NetSuite.
• Inbound order will be created for only purchase orders in status “Pending Receipt”.
• In NetSuite, we are able to give line level location to each item in the purchase order.
But in Crane, this is not possible. So, while creating inbound order for a NetSuite
purchase order, we will group the items in purchase order based on the location
(Hialeah Garden / Irving Dallas) and create 2 different inbound orders if items in both
locations are available in the order;
o one with project look up code Corp Design-Mia which includes items in
location Hialeah Gardens and another with project lookup code Corp DesignDFW that includes items in location Irving Dallas

Handling Master Purchase Order Creation:


• The Corp team create a master purchase order in NetSuite, and subdivide the master
PO to smaller purchase orders based on loading per container.
• We will create inbound orders for these smaller PO’s only, not for the master PO. We
will create a custom checkbox field named “Is Master PO” in the purchase order
record so that if the checkbox is checked while master PO creation, then this master
PO will not be considered by the script for inbound creation in Crane world.


Limitations in Inbound order integration:


• It takes a delay of about 10-15 minutes for an inbound order to create in Crane
world when we create it using the API end point. Even if we get a success response
for the API call for inbound order creation, we cannot confirm if the order is
successfully created in Crane world. If any error is occurred in the process and the
inbound order creation got failed, the system autogenerate an error email and only
based on this email we can confirm if the order is created or not in crane.
• That is, if we get an error email for the created inbound order, this means the order
creation is not successful in crane and we will then solve the error occurred and then
re perform the inbound order creation.

Goods Received:


• When the items ordered in inbound order are received, we will get a success
response for the milestone API call “Goods Received”. Once this response is
retrieved, we will create item receipt for the corresponding purchase order in
NetSuite for the received item.
• To check if the inbound order is received, we will deploy a schedule script and at
regular intervals the script will call the “Goods Received” API. And, when we retrieve
a success response to this API call, we will then create item receipt for the received
item/items in NetSuite.
• We will check using the document number of purchase order if it’s received from
Crane with the help of Goods Received API, and if received we will create item
receipt and exclude this document number from the further script executions.
• The status of item receipt created for the received items will be “Pending Bill” in
NetSuite. In the API response we get for the goods received API, it lists the items received with
order line and quantity received. Using this information, we will create item receipt
for the received items with received quantity for corresponding purchase order.
• If there are multiple good receipt in Crane (partial receipt), then we will create
multiple item receipts in NetSuite as well.

Item Integration – Material Import:


• Material import is performed to import the items to Crane world.
• When a new item is created in NetSuite, we will create the same item in Crane world
using the Material import API.

Limitations in Material Import:


• We will consider only inventory items and Kit/Package items in NetSuite for the
material import.
• We will perform only creation of item in Crane, not the update. That is, when an
item in NetSuite is updated, we will not update the corresponding item in Crane
world.
• It takes a delay of about 10-15 minutes for an item to create in Crane world when we
create it using the API end point. Even if we get a success response for the API call,
we cannot confirm if the item/material is successfully created in Crane world. If any
error is occurred in the process and the material import is failed, the system
autogenerate an error email and only based on this email we can confirm if the
material is imported or not in crane.
• That is, if we get an error email for the material import, this means the material
import is not successful in crane and we will then solve the error occurred and then
re perform the material import

Leave a comment

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