Tag Archives: netsuite integration

We Did: WordPress WooCommerce and Netsuite

Challenges

Customer is hosting a website where visitor are allow to register and login. Visitor and existing users are allow to make purchase through the website too but the transactions and payment would need to be tracked through Netsuite.

Solution:

Purpose To sync product, website users and sales transaction between website (WordPress WooCommerce) and Netsuite
Applications WordPress (WooCommerce)
Netsuite
Versions WordPress
Netsuite
Tool Boomi
Information Netsuite Non-Inventory Sales Item > Woocommerce Product
Woocommerce User > Netsuite Customer
Netsuite Customer > Woocommerce User
Woocommerce Orders > Netsuite Sales Order
Netsuite Sales Order > Woocommerce Orders
Data Formats JSON and XML
Volumes ~100/day
Process When customer register a login through website, customer information needs to be stored in Netsuite as well. When a items are added and maintained in Netsuite, the product needs to be made available in the website for people to purchase. And when customer make a purchase through website, the transaction needs to be in returned tracked in Netsuite for shipping and reporting purposes.
Schedule Every 2 minutes
Complexity Medium

Wedid: Netsuite & FTP Integration

Challenges:

Files are generated from a warehouse management system, with information about incoming and outgoing transactions, and transferred to a FTP server. These transaction files in turn need to be synced to Netsuite system.

Solution:

ftp_ns

Purpose To sync incoming and outgoing transactions from warehouse management system into Netsuite.
Applications Netsuite
FTP (Storage)
Tool Dell Boomi Atomsphere
Information FTP (Receipt) > Netsuite Item Receipt
FTP (TransactionHistory) > Netsuite Inventory Adjustment
FTP (Shipment) > Netsuite Item Fulfillment
Data Formats XML
Volumes ~100/day
Process FTP (Receipt) Create Netsuite Item Receipt
FTP (TransactionHistory) Create Netsuite Inventory Adjustment
FTP (Shipment) Create Netsuite Item Fulfillment
Schedule Every 5 minutes
Complexity Medium

Netsuite: Retrieving Picklist Value Internal IDs

In Netsuite Web Services, list fields require internal IDs to specify the list values.

First, you will need to enable the ‘Show Internal IDs’ in the system preference.

1. Go to Home > Set Preferences.

2. Under the General tab, under Defaults, check ‘Show Internal IDs.

After that, you can go to the list field configuration page, under the Values tab, you will see list of the values and their IDs.

List_Field

Boomi Wedid: Upgrading from Legacy Netsuite Connector to New Netsuite Connector

Challenges

Our customer has integration between Salesforce and Netsuite running for a quite some time. The integration is using the legacy Netsuite connector which only supports up to version 2009.1.

Our customer has recently upgraded Netsuite to version 2013.1. Due to this, the existing integration is no longer working with the legacy connector.

Data FormatsXML

Purpose To upgrade the integration process from the legacy Netsuite connector to the new Netsuite connector which supports from version 2010.1.
Applications Netsuite
Tool Boomi

 

Boomi: Updating Netsuite Connector

Boomi have released new Netsuite connector

Here are some guidelines when you are upgrading the legacy connector to the new Netsuite connector:
  1.  A new Connection needs to be created. The connection will support the latest Netsuite version (from Version 2010.1).
  2. A new Operation needs to be created. The profile schema will be changed.
  3. Once the Operation is changed, you may need to re-select the Filters (if any) and re-enter the Parameters in the connector.
  4. The mapping in the Map will be lost due to the new naming of some of the fields.
    Tips: Before selecting the new Netsuite profile, you can first export the mapping out which will help you to re-map the fields for the new profile later.
  5. There are also some components which will be affected to the new connector change if:
    – Map function
    – Properties
    – Decision
    – Notify/Exception
    – Data Process
    – Find Changes
    – Cache Function
     Business Rules
Be sure that you plan well before upgrading to the new Netsuite connector to avoid any unexpected errors.

Integrating Netsuite and Salesforce

Ever wonder how Salesforce and Netsuite could compliment each other? Here is an example.

You may be managing all your customers’ information as well as tracking all the related opportunities in Salesforce and on the other hand, you use Netsuite to manage all the invoices issued to your customers. It would be a hassle to ensure all sold products and invoice transactions performed in Netsuite are tracked/linked correctly in the associated opportunities created in Salesforce when you are doing it manually. An easier consideration would be to automate this business processes. A simple diagram below illustrates how each applications’ entities/objects could relate and bring benefits to one another when they are integrated:-
You have an idea on how you want your Netsuite and Salesforce to work together? Feel free to contact us to discuss or check out our portfolio if you are interested to learn more on how these two powerful applications could compliment each other.

Integration Tip: Synchronize Picklist Value Part 2 – Externalizing Picklist

We’ve explained the different types of picklist available in our previous blog. This time, we are going to talk about what are the ways to maintain picklist where its value is represented by ID via API.

Usually, we can create a cross-reference table within the integration process to store the picklist values and their corresponding IDs. We can then retrieve the IDs and the matching values via the cross-reference table when needed. However, this approach may require a technical person to maintain the picklist values and IDs, as non-technical person may find it difficult to maintain as it require amending the cross-reference table via the integration process.

Alternatively, we can externalize the picklist cross-reference table within an application instead. For example, when integrating between Netsuite and Salesforce, we can create a picklist cross-reference table in Salesforce to store the picklist values and IDs. When a picklist ID is retrieved from Netsuite, the integration process will be able to retrieve the corresponding values from this table and insert into Salesforce.

With this approach, a non-technical user too can access and maintain the picklist values as well as IDs flexibly.

Boomi Integration: Working with Netsuite List Record

When updating a Netsuite record with related list record via SOAP API, Netsuite will tend to remove and replace the existing list record with the new list contains in the request. For example, I have an Invoice (Invoice object) with 2 line items (itemList list object) in Netsuite. I would like to create another new line item into the same Invoice via SOAP API. To do so, I created a simple operation in Boomi process and post the following data to Netsuite to perform an update.

Figure 1: Sample Netsuite request

As soon as the Boomi process is executed, all the existing line items in the Invoice are replaced with the new one that I inserted through SOAP API.

After doing some research, I found that this can be prevent by setting the “replaceAll” attribute on the list to “false”.

Figure 2: Sample Netsuite request with “replaceAll” attribute

The scenario above is about creating new line items into an existing Invoice. If you would like to update an existing line item in the Invoice, you just need to set the “replaceAll” attribute to “false” and specify the correct line id.

Utilizing Netsuite Custom Fields via Web Services

In Netsuite, custom fields permission can be configured up to the individual field level basis. The custom field security setting reflect how it behaves via web services as well.

In other word, whether or not you can read/write a Netsuite custom field through web services depend on the security/permission set to the user login via web services.
Apart from the custom field level security settings, it is also important to check if the web services user is granted with permission to manage custom fields in particular record type. For example, in Item Record Type, there may have been some custom fields setup for your organization:-
To be able to retrieve/manage the custom fields setup for record type, Item via web services, ensure that the user’s role is granted with ‘Custom Item Field’ permission as well:-
As such, you may want to check on the above before you start utilizing Netsuite custom fields for any of your integration work or development via web services.