While eXtendTech often offers customizations and external integrations for NetSuite, we always prefer to stay native. That’s why today we are talking about the native NetSuite Billing Operations function. We use it too and it’s great!
Over the years our team has watched NetSuite evolve by adding features and functions that, in the past, we would have needed to author custom scripts to achieve. While this may frustrate some people, we welcome it with open arms. One less custom feature to support, in our book, is a good thing. Plus, it puts the functionality directly back into NetSuite giving the powerful tool the chance to shine.
Being hands on practitioners of NetSuite for over 18 years, we remember the days when you couldn’t write any scripts in NetSuite. Believe it or not, back then you had to use the native functions exclusively. Man, did those days suck compared to today, but it did provide us with an incredible depth of what can be achieved natively. Now, today, we still live by the “Native First” methodology. If you can accomplish your objectives by leveraging native NetSuite exclusively, then we believe that is true best practice.
Automated Invoicing with NetSuite Billing Operations
One example of this happened recently with one of our clients when they inquired about automatically billing Sales Orders on a daily basis. A NetSuite consulting resource gathered requirements and proposed a development estimate in the range of 10–12 hours of work.
We heard this and immediately thought about NetSuite Billing Operations and urged the resource to consider this as the solution. The resource admitted that they were not familiar with this functionality, so we took 15 minutes to show them how it worked and demonstrated it in action to confirm that it would meet the requirements of the client. They tested it in Sandbox and confirmed it would work perfectly for the requirement. This changed the work from being 10–12 hours and taking a week, to taking less than an hour and being done almost immediately.
Setting Up NetSuite Billing Operations
To leverage this function you have to enable the feature. This can be done by going to Setup > Company > Enable Features. Under the “Transactions” subtab, you would enable this under the “Billing” section.
Once you’ve enabled this feature, setting up Billing Operations is an easy task. You have an option to execute this as a single event, or you can have it run on a schedule. There are some configurations to consider when setting this up:
- Frequency (Scheduled) — If you want this run regularly on a schedule, then you can choose the frequency of when this should execute. This is what the schedule setup looks like on the Billing Operation Schedule:
- Customer & Customer Group Selection — This is where you define a specific customer or group of customers that you want to be subjected to this automated billing routine. You can create a dynamic Customer group or just click “All Customers” if you wish, as the next criteria is where the specifics will be truly defined.
- Billables — This is where you define what should be automatically Invoiced or converted to Cash Sales. While you can bill out several different things, like charges, time, items, or expenses. Our most frequent use of this function is billing out Sales Orders. The nicest part? You can write a Saved Search of which Sales Orders you want billed, and those will be the only ones considered.
Easy to setup and activate
This is easier than writing a script or performing a workflow, and NetSuite will be happy to support you if you want to know how to set it up and make it work for you. If something didn’t run as expected, NetSuite will be happy to support the functionality and ensure it works as expected.
If you want to read more, check out SuiteAnswers answer ID 39220 as a starting point.
Here’s a screenshot of the complete Billing Operation Schedule setup page, it’s really quite simple and intuitive:
While we write custom applications and author code in NetSuite regularly, we always recommend that our clients and users look to leverage native NetSuite prior to performing custom development work. There are too many “NetSuite Professionals” that immediately start writing code to achieve functions that exist natively due to their lack of knowledge of the native NetSuite platform. While there are plenty of gaps within NetSuite that require custom code or applications to be written, there is a tremendous amount of functionality that gets overlooked by both customers and consultants due to lack of knowledge and experience. If you start coding functions that you can easily achieve by leveraging native functions, then you’re making a mistake and should head back to SuiteAnswers to get yourself the supported answer.
Check yourself before you wreck yourself
As a customer of NetSuite, you should beware of these tendencies when working with contractors and research your desired functions in SuiteAnswers before you start having code written.
If you’re looking for guidance on how to achieve some objectives leveraging native NetSuite to its’ fullest potential, or it’s time to have a custom application or function authored, then get in touch and we can help you determine the best solution going forward.