For software developers, understanding the Order-To-Cash process in NetSuite is crucial, as it forms the backbone for integrating and extending the platform’s capabilities to meet the specific needs of your organization or clients. This process involves various stages, including order creation, inventory management, invoicing, payment collection, and financial reporting, all of which can be customized and automated to enhance efficiency and accuracy. This introduction serves as a starting point for software developers looking to explore the Order-to-Cash process in NetSuite, highlighting its significance and the opportunities it presents for customization and optimization in software development projects.
Customer
A customer can be classified as either a company or an individual with a history of previous purchases from your business or someone making their transaction. Maintaining customer records enables the consolidation of essential information in one place, including details such as their purchase history, items purchased, contact information, financial data, and CRM-related data such as events, tasks, and marketing campaign engagement.
Furthermore, it grants online access to their most recent sales activities.
The creation of a customer record serves as the initial step, allowing for the generation of orders and the issuance of invoices to customers.
Before we begin investigating the Customer record, it is important to understand the different stages in the sales and customer relationship management process.
Here’s how they are typically defined in Netsuite
- Lead: A lead is an individual or organization that has shown some level of interest in your products or services but has not yet progressed to the stage of making a purchase. Leads are often collected through various means, such as website inquiries, trade shows, or marketing campaigns.
- Prospect: A prospect is a lead that has been further qualified and is considered more likely to become a customer.: A prospect is a lead that has been further qualified and is considered more likely to become a customer.
- Customer: A customer, in NetSuite, is an individual or organization that has made a purchase and entered into a business relationship with your company.
Before creating the customer, let’s take a look into some of the preferences for customer record generation. To do so, Navigate to
Setup > Sales & Marketing Automation > Sales Preferences.
We are not going to explain every setting on this page, however, we are going to demonstrate the most important ones.
- Lead Status: The initial status is automatically assigned for new lead records by default.
- Prospect Status – New: The standard status assigned to prospects that currently have no transactions linked to them.
- Prospect Status – Opportunity: The default status for prospects upon the creation of an opportunity estimate for them.
- Prospect Status – Estimate: The default status for prospects upon the creation of an estimated record for them.
- Customer Status: Select the default status assigned to customers.
- Preferred Lead Form: The custom form that you wish to be automatically selected as the default when entering a lead record.
- Preferred Prospect Form: The custom form that you wish to be automatically selected as the default when entering a prospect record.
We will discuss lead conversion in another article. For now, we will keep our focus on customer record creation and the features that are associated with this record type.
In the following section, we will discuss and present the most important feature of the customer record. To do so, we are going to use a real-world example that we are going to use for the whole series.
Throughout this series, we will be using a fictional company called Jasmine Flowers to explore some practical use cases solve real-life business problems, and demonstrate features. We will be playing the role of a Netsuite developer, administrator, and consultant at the same time.
Jasmine Flower is a medium-sized company based in Colorado, United States which provides training materials, flower seeds, ceramics, baskets, hand tie bags, florist foam bricks, and more. Customers range from small-sized flower shops to modest-sized farms.
Scenario: Our company has just entered into an agreement with Mededierian Flowers Shop. a global flower corporation providing flowers and flower suppliers and florist needs. In the following sections, I’m going to explain and demonstrate how to create this new customer record for Mededierian Flowers Shop.
- Make sure the customer does not exist: As best practice, we need to make sure the customer does not exist in the system. We will use a global search field to enter the customer name. If Netsuite didn’t identify or find the customer with the same name. It means the customer does not exist and then we Click on Create Customer.
- Type Field: Since Mededierian Flowers Shop is a company with the potential for multiple individuals as contacts. We will select Type: Company.
- Parent Field: Customers can be organized in a parent-child structure, as seen in cases such as businesses being subsidiaries of holding companies. For example, if Mededierian Flowers Shop is a child or subsidiary of another Netsuite Customer you have the option to designate the Parent Customer in the Parent Company field. This functionality allows you the potential to bill the sub-customer while the parent customer may handle the payment submission. This is where the concept of a relationship hierarchy becomes relevant.
There are many Netsuite features that affect and relate Parent-Child relationship. Some of them are:
- Aging Report
- How you can apply payments to those customer invoices depends if the Consolidated Payments feature is enabled or not.
- Credit Limit Handling.
We will discuss all the above features in detail in a future article.
- Status Field: The status field of the customer will be automatically populated based on the Sales preferences we set up earlier. In our example, it would be Closed Won.
The meaning of customers’ statuses is the following:
- Customer-Closed: This means the customer is longer doing business with us, either they are gone or doing business somewhere else.
- Closed-Won: This means the customer is active and working with us.
- Customer-Renewal: This status is used for subscription models such as software licenses. Or the customers are coming back to us.
- Default Order Priority Field: This field is related to priority-based item commitment. We will talk about Item commitment in a future article. For now, this field is used if you have VIP customers and you want to support priority-based item commitment which allows you to prioritize the importance of filling orders for those customers.
- Subsidiary Field: The subsidiary that will engage in transactions with this customer, and keep in mind that a customer cannot have dealings with more than one subsidiary. This field is important whenever you create a transaction for this customer because it is going to source all the items, accounts, locations, and currencies from this subsidiary.
Prior to accessing the financial subtab, I’d appreciate going over some accounting terms to ensure we’re on the same page.
- Account Receivable: Accounts receivable is any amount of money your customers owe you for goods or services they purchased from you in the past. This money is typically collected after a few weeks and is recorded as an asset on your company’s balance sheet.
For example: When a Mededierian Flowers Shop buys items from us, we create an invoice for 100$ amount. We will record it as an account receivable because it represents money we will receive from them in the future.
- Accounting Term: The accounting term is used to specify when the payment is due on customer invoices. For example: if the customer term is Net30. It means that the customer must pay the full amount of the invoice after 30 days of the invoice date. If the customer doesn’t pay the invoice after 30 days, this invoice will be calculated on the overdue amount.
Financial Subtab
- AR Account: The AR account to use as the default on receivable transactions for this customer. If Use System preference option is selected, the value will be selected from Setup → Accounting → Accounting preferences. Under Item/Transaction subtab.
- Price Level: This parameter dictates the pricing structure for items associated with a particular customer. Each item can have various price levels. For instance, consider the item record for “Jasmine Seed Pack 1,” where multiple price levels can be specified. The base price might be $20, while the Corporate/Business Price Level could be $15. Suppose we designate the Mediterranean Flowers Shop as having the Corporate/Business price level. In that case, whenever we generate a sales order or invoice for this customer involving this item, the price will be set at $15.
- Currency Field: This serves as the principal currency for this customer when the multiple currency feature is activated in your Netsuite account. In case the multiple currency feature remains inactive, the customer’s transactions will be restricted to the currency of the subsidiary.
However, when the Multiple currency feature is enabled, the customer gains the ability to conduct transactions in other currencies. To facilitate this, you must add all the currencies the customer intends to use under the currencies subtab. To verify whether the multiple currency feature is turned on, navigate to Setup → Company → Enable features and check the MULTIPLE CURRENCIES feature under the Company International subtab.
We will discuss a more comprehensive discussion of the Multiple currency feature and how currency exchange rates operate in a future post.
- Credit Limit: This field works with the terms field that we discussed earlier. In this field, you set the credit limit to manage the amount of money that this customer can owe you (which means can purchase without paying you directly). When the customer exceeds that limit while entering transactions such as cash sales, sales orders or invoice, Netsuite can warn you or block the transaction based on the company preference. For example: if we set this field to 1000$, and the customer has overdue invoices of 2000$. Next time you try to enter a transaction for this customer, you will receive a warning or Netsuite will prevent submitting the transaction. You can set that behavior of warning or blocking by going to
Setup → Accounting → Accounting Preferences. Under General Tab, Accounts Receivable Section. Check Customer Credit Limit Handling.
- Tax Information: Within the tax information section, we have the capability to input the customer’s tax registration number and tax code, which are then used for the customer’s purchases. Every time you enter a sales order for this customer the tax item (tax code) will be sourced into sales order tax information. However, you can overwrite this value on the sales order.
Additionally, you can set customer VAT Reg NO. that will be used in reports and invoices. - Group Pricing & Item Pricing: Group pricing and item pricing allow you to allocate specific price levels for a set of items. We will discuss item pricing in a future post.
Summary
Customer record plays an essential role in the order-to-cash process. This record type holds most of the default values that will be sourced into the order to cash records. In this article, we’ve explored the crucial features and fields that developers and consultants should have a solid understanding of. In upcoming posts, we will delve into the Sales Order stage in more detail.
The articles you write help me a lot and I like the topic
I enjoyed reading your piece and it provided me with a lot of value.
Thank you for being of assistance to me. I really loved this article.
Great content! Super high-quality! Keep it up!