Skip to content

NetSuite

How a manufacturer moved customer onboarding into NetSuite

Alfonso Terron · Software Engineer & Solution Architect
· 5 min read

In short

We replaced email and PDF onboarding with web forms on the SuiteCommerce store that write straight into NetSuite. Applicants register online, one approval field grants access and emails them, account setup and credit applications are completed and signed online, and Sales sees requests, approval times and campaigns inside NetSuite.

SuiteCommerce · Case study

Many NetSuite companies sell online with SuiteCommerce but still bring new customers in by email: a PDF to fill in, a reply from Sales, details typed into NetSuite by hand. This is how we moved that whole process onto the website and into NetSuite for a diagnostics manufacturer that sells through distributors, and what any NetSuite team can take from it.

What problem did the client have?

New customers, distributors and partners had no simple way to apply online, and the team had no clear view of who was waiting, who was approved and where requests came from. Registration, approval, account setup and credit applications lived in emails and PDFs, and the old support request forms on the site were hard to change and did not look like the rest of the store.

Talk to a NetSuite expert

We build, fix and speed up NetSuite stores and integrations for companies in the US and UK.

The team wanted four things:

  • One place on the website for every kind of applicant: end users, distributors, manufacturers and channel partners.
  • Approval inside NetSuite, with the applicant told automatically.
  • Account setup and credit applications online, signed, and saved on the customer record.
  • Numbers for Sales: how many requests, of which type, from which campaigns, and how long approval takes.

What did we build?

A set of web forms on the SuiteCommerce Advanced store that write straight into NetSuite. Today there are more than a dozen: registration for each type of applicant, account setup, additional details for distributors, a credit line application, support requests for products and instruments, project requests, and short enquiry forms inside existing pages of the site.

What matters for the team is how they are managed. Each form is a record in NetSuite. Adding a field, changing a label, making a question required or showing it only when another answer applies is done in NetSuite, without waiting for a developer or a new release of the website.

Every form creates the right thing in NetSuite: a lead for a registration, a support case for a support request, or an update to the customer's own record for account setup and credit. Files people attach, such as instrument exports, are saved with the case.

How does approval work now?

With one field. Everyone who registers arrives in NetSuite as a lead without access to the store. When someone on the team sets the approval field on that lead, NetSuite does the rest:

  1. The applicant gets access to the store and an email telling them they are approved.
  2. The approval date is recorded, so Sales can see how long approval takes.
  3. The next steps are marked as pending: every account completes Account Setup, and distributors also complete a second distributor form.
  4. When the customer logs in, the store reminds them what is still missing until it is done.

The credit line application, which used to be a paper form, is now one of those online steps. The customer fills in billing details, trade references and bank, signs on screen, and the signed copy is saved as a PDF on their record while Sales gets a summary by email.

How do you keep a public form safe?

A form on a public website is open to anyone, so three rules shaped the design:

  • A form can only create what it is meant to. Each form writes to one kind of record from a short, fixed list. Nobody can turn a contact form into something that edits orders or prices.
  • Customer details change only after login. Account setup and credit forms work only for a customer who is signed in, and only on their own account. Knowing someone's email address is not enough to change their details.
  • A typed name is not proof of who someone is. If a visitor types the name of a company that already exists in NetSuite, the request is saved, but it is not attached to that customer on the strength of what was typed.

The forms also filter out bots before anything reaches NetSuite, and they limit repeated attempts, so the team does not wake up to a list of fake leads.

How does Sales see what the forms bring in?

Every submission is recorded in NetSuite, whether it worked or not, together with where the visitor came from: the site that sent them, the page they landed on and the campaign in the link. On top of that, Sales has a page inside NetSuite with a date range and a form filter that shows, at a glance, how many requests came in, of which type, how many are waiting for approval, how long approval takes, which approved accounts have not finished setup, and which campaigns bring the most registrations. The usual saved searches are there too, for anyone who prefers lists.

Before this, the only trace of a failed submission was a technical log nobody read. Now a form that stops working shows up as a number Sales can see.

Who built it, and how?

Our AI agents built it, and a senior engineer from our team approved every design and reviewed every change before it reached the store. That is how we work on every client: the agents do the building, testing and paperwork; a person who has worked with NetSuite since 2011 decides what ships.

The account had no sandbox, so everything was checked before it went live. A few numbers from the project:

  • Ten written designs, one for each part, each approved before any work started.
  • More than 800 automated checks that run before every release, from required fields to who can approve an account.
  • 157 of the 184 changes written by an AI agent and reviewed by a person.

Testing against the live account also caught things no plan would have. One example: anonymous visitors on a SuiteCommerce store run with very limited permissions, so the forms could not create leads or support cases on their own. We moved that step into NetSuite, where it runs with exactly the access it needs and nothing more.

What can other NetSuite teams take from this?

  1. List every form or PDF a new customer has to fill in today, and who types it into NetSuite afterwards.
  2. Decide what approval should trigger: access, an email, the next form. If one field could do it, it probably should.
  3. Ask which questions Sales asks every week. If NetSuite cannot answer them today, the data is probably not being captured when the customer applies.

If your customer onboarding still runs on email and PDFs, talk to us. It is the kind of work our SuiteCommerce subscription covers.

Frequently asked questions

Do we need a developer to change a form?
No. Each form is a record in NetSuite. Fields, labels, required questions and questions that only show after a certain answer are changed there, without a new release of the website.
Does this work on SuiteCommerce Advanced only?
This project runs on SuiteCommerce Advanced. The same approach, forms on the store that hand the saving to NetSuite, also fits SuiteCommerce and SuiteCommerce Standard stores, which are customized through extensions too.
Where do the submissions end up in NetSuite?
In the record each form is meant for: a lead for a registration, a support case for a support request, or the customer's own record for account setup and credit. Every attempt is also logged, with where the visitor came from.
Can customers attach files?
Yes. Attachments are saved with the record the form creates, for example instrument exports on a support case, with limits on size and file type.
How long does a project like this take?
It depends on how many forms and steps you need. This one grew form by form: registration first, then support requests, approval, account setup, credit and metrics, each released when it was ready rather than all at once.

Sources

  1. Oracle NetSuite Help Center: SuiteCommerce Roles and Permissions (opens in a new tab)
  2. Oracle NetSuite Help Center: Executing Scripts Using a Specific Role (opens in a new tab)
Portrait of Alfonso Terron

Alfonso Terron

Software Engineer & Solution Architect

Software engineer and solution architect at VintenCloud, working with NetSuite since 2013.

Alfonso Terron on LinkedIn (opens in a new tab)

Keep reading

  • Performance

    Finding silent errors and slow scripts in NetSuite

    Silent errors in NetSuite are failures that only leave a trace in the script execution log or in system notes. To find them, keep production deployments off Debug, read the logs before NetSuite purges them, watch governance usage, and let an agent follow the logs live while you test.

    · 6 min read

  • NetSuite

    When to pair a Next.js front end with NetSuite ERP

    Pair a Next.js front end with NetSuite when your site is mostly content, such as product pages and documentation, and NetSuite already holds customers, orders, licenses and billing. Next.js renders and caches the pages; NetSuite stays the system of record, reached server side through REST web services or RESTlets with OAuth 2.0.

    · 6 min read