A NetSuite Actual Gross Profit Solution – eXtendJobs


Have you ever found yourself puzzled over NetSuite’s lack of Gross Profit Tracking? Working with so many clients that faced this same dilemma, we found ourselves wrestling with a clean way to derive gross profit from a group of sales and purchase transactions. 

Many of our clients have high transaction volumes requiring drop ship purchase orders. Calculating actual gross profit across these groups of transactions starting with the Sales Order and flowing through to the subsequent Drop Ship Purchase Orders is only really feasible by deploying native project methods, but it’s impractical for the pattern of use cases we see across clients. These clients require gross profit calculations to support deferred expense recognition as well as downstream commission calculations .

We came up with a simple solution that is entirely within NetSuite and was created with a simple custom record, some custom fields, saved searches, workflows and workflow action scripts. We named it “eXtendJobs” (shocker), and in recent years we’ve seen it adopted by many different organizations for different types of internal tasks.

This article will explain how it works and how it can solve common problems or gaps within your NetSuite environment.

Understanding Gross Profit Margin Calculation on Sales Orders

NetSuite Sales Orders offer only a gross profit estimate based on anticipated revenue and costs of the impending Purchase Order. While NetSuite does give you flexibility in defining the Cost Estimate Type, including the purchase order rate, it still falls short in giving you actual revenue and cost data for accurate calculations downstream.

These constraints hinder the ability to formulate effective item pricing strategies. It’s crucial for businesses to track all costs throughout the order lifecycle, especially the  unforeseen ones, to protect margins and avoid overcompensation on commissions. Driven by the severity of this issue, we devised a solution that could deliver a 360-degree view of the actual gross profit for each Sales Order and each item on that order though all stages of procurement and fulfillment, as well as considering the posting implications via Invoicing & Vendor Billing processes.

Trying Various Approaches

Before we brought eXtendJobs to life, our team pursued several strategies to tackle the Gross Profit Margin dilemma within NetSuite. These involved using saved searches, resorting to Excel spreadsheets, and even trying out external project management tools. Yet, each method had its own set of roadblocks: 

  1. Saved Searches: While saved searches did offer the necessary data, NetSuite fell short when it came to aggregating data from multiple saved searches into a single, comprehensive report. Moreover, we needed a methodology to track revenue and cost for items across all subsequent transactions—a functionality not readily available in NetSuite.
  2. Excel Spreadsheets: Spreadsheets did allow us to monitor costs and revenue. However, since the data wasn’t updated in real-time, generating current, accurate reports became an uphill battle. To add to the difficulty, rekeying data into spreadsheets proved inefficient.
  3. External Project Management Tools: Some of these tools can connect with NetSuite, eliminating the need for rekeying data. But, syncing data wasn’t a real-time process, which deprived us of the instant visibility we required for swift decision-making. Additionally, this solution was not native to NetSuite which means any reporting would have to be external to NetSuite introducing another layer of complexity. 

The Limitations of NetSuite’s Native Project Method 

We delved into NetSuite’s native “Project” record hoping it might offer a holistic answer to our Gross Profit calculation gap. The Project record does do some revenue and cost aggregation, but not to the level of detail that we required.  Moreover, some post-sales order transactions were not automatically linked to the project record, leaving us with incomplete financial reporting. These hurdles led us back to the drawing board, eager to devise a more effective solution. Specifically, a comprehensive NetSuite actual gross profit solution that would take into consideration all revenue and costs from all related transactions.

Engineering the eXtendJobs Solution 

That’s when eXtendJobs was born – a custom, native NetSuite record designed to seamlessly connect the Sales Order with all subsequent transactions. This unique approach enabled the aggregation of all actual revenue and costs from connected transactions, ensuring accurate actual gross profit calculations at both the order and item levels. 

The introduction of eXtendJobs marked a significant transformation. Companies implementing our solution began witnessing a notable change in their ability to navigate Gross Profit Margin challenges. eXtendJobs provided them with real-time visibility into their revenue, costs, and gross margin at both the order and item levels. This newfound clarity empowered them to make informed decisions, fine-tune their pricing strategies, and ultimately drive their business success. 

Looking back, the creation of eXtendJobs feels like the moment of cutting through the fog of uncertainty. It was a solution that could help numerous companies struggling with the same issue. 

eXtendJobs: A NetSuite Native Solution 

Designed as a native solution, eXtendJobs operates exclusively within NetSuite. It utilizes workflows to bridge the sales order and its subsequent transactions with the eXtendJobs record. The use of workflows not only ensures compatibility with future NetSuite versions, but also allows for uncomplicated modifications when required.  Additionally, each transaction line item is also associated with the eXtendJobs record which means our solution can calculate an actual gross margin at both the order-level and the item-level.

Beyond enhancing Gross Profit Margin accuracy, eXtendJobs offers additional key features that streamline and refine the financial management process within businesses, including:

  1. Deferred Expense Recognition: This feature effectively tackles the intricate task of synchronizing COGS with revenue recognition within the appropriate accounting period, adhering to the Generally Accepted Accounting Principles (GAAP).  By implementing this feature, a significant load is removed from the accounting department, reducing or even eliminating the need for month-end accruals for COGS. Moreover, our solution encompasses the ability to defer expenses associated not only with inventory items but also non-inventory items on Drop Ship Purchase Orders.
  2. Commission Calculations: With the foundation that eXtendJobs provides, businesses can more accurately calculate and disburse commissions based on actual Gross Profit Margins. This brings a new level of efficiency and transparency to the process and minimizes margin erosion from commission overpayments

How it works

When a sales order is created in NetSuite, an eXtendJobs custom record is automatically generated.  The sales order itself becomes the first transaction linked to the job.

As each subsequent, related transaction is created in NetSuite (i.e purchase orders, vendor bills, item fulfillments, etc), the eXtendJobs reference is set on each of these related transactions automatically.

If a need ever arises to be able to manually associate a transaction that is not natively linked as a related record, a user could simply specify the relevant eXtendJob number to the transaction being entered.  

Once the sales order has been fully billed, a Gross Profit calculation can be triggered (either manually or automatically) to provide the true gross profit.   If any subsequent transactions are linked, the Gross Profit calculation can simply be re-triggered to perform the necessary recalculation.

eXtendJobs: Our NetSuite Actual Gross Profit Solution


Developing eXtendJobs as the NetSuite actual gross profit solution has been fulfilling as it has provided a solution to a persistent issue that plagues virtually all businesses operating on NetSuite. With this tool, businesses are now empowered to make strategic pricing decisions anchored in real-time, actual cost data, thereby plugging the Gross Margin gap, and elevating their profitability and operational efficiency.

But our exploration doesn’t end here. Keep an eye out for a forthcoming article that will delve deeper into eXtendJobs for the handling of Deferred Expense Recognition.

Should you wish to dive deeper into eXtendJobs and explore how it can provide you with a clearer understanding of your order and item profitability, don’t hesitate to get in touch. We’re excited to start this conversation with you and support you in plugging your own Gross Margin gap in NetSuite.