Sites running SuiteCommerce, SuiteCommerce Advanced, and SuiteCommerce MyAccount can support a variety of business-to-business (B2B) and business-to-consumer offerings (B2C) use cases. Some businesses operate their site with little or no differentiation, effectively treating all customers as the same and offering the same experience to all; others choose to add in differentiators that apply either to the site as a whole (ie a dedicated site) or to specific customers only (ie, just the B2B ones).

All SuiteCommerce products are well suited to both B2B use cases, in particular because they leverage or extend those that are built in to the NetSuite product and platform. Examples of the types of things that might be interesting to B2B web stores include:

  • Different user experience and user interface
  • Validating who your customer is before doing business with them
  • Wholesale price lists or absolute pricing
  • Volume discounts, including marginal rates
  • Access restrictions on browsing, pricing, or purchasing (particularly to anonymous users)
  • Segmented catalogs, personalized for groups of, or individual, customers
  • Specialized functionality for B2B purchasing processes, such as quoting and invoicing
  • Specialized payment options such as credit limits, payment terms, and ACH electronic transfers
  • Many-to-one account ordering (ie, multiple contacts ordering on behalf of a single company)
  • Minimum order values

This page will describe how you can implement these features and functionality as part of a coherent vision for supporting B2B use cases, either on a separate SuiteCommerce site or an existing B2C web store. There are two components to this:

  • Considerations for how these features can be applied if you’re planning on operating separate sites
  • Considerations and directions for enabling these features, whether single site or multi-site

None of the content in this page requires ‘developer’ skills per se (ie, code changes) and so can be done by someone with strong NetSuite administration skills only.

Choosing Whether to Add B2B Features to an Existing B2C Store or to Set Up a Separate Store Front

The first big decision you must address is whether you wish to operate a single store front to serve both B2B and B2C customers (aka a ‘hybrid’), or if you wish to operate separate ones. Separate store fronts offer greater flexibility to both look-and-feel and functionality, but will typically require:

  • Additional effort to maintain
  • More licenses, depending on your current agreements with NetSuite

However, depending on your business’s requirements, this choice may moot as you may have to use a separate site regardless as some settings can only be set on a per-site basis (which means that they apply to every customer using the site).

If you use OneWorld, this decision is further complicated. Multiple subsidiaries in NetSuite may use a single SuiteCommerce web store, however only one subsidiary may be set as its default. This has a number of implications; for more information, see SuiteCommerce and OneWorld. For the purposes of this article, we will work on the assumption that you are running a single subsidiary or one site per subsidiary.

It’s important to recognize that some features can be applied at various audience granularities or with no granularity at all. For example, SuitePromotions allows you to target discounts at specific users, groups or entire websites; volume pricing applies to all sites and customers to whom the product is available. However, when it comes to operating a B2B SuiteCommerce experience, there are typically three dimensions on which you can target features:

  • On a per-site basis
  • On a per-domain basis
  • On a per-customer basis

What this means is that when it comes to decisions about you want to or can build your B2B store, some things will apply at a macro level and some will apply at a micro level.

Functionality Available Per-Site

Using a separate site gives the greatest flexibility as you’re dedicating an entire site to a particular customer segment. This means that you are free to configure the web site setup record as you wish, and it also means you must use a separate domain name, which means you can choose which themes and extensions you wish to activate on it.

There are a number of per-site settings in the web site setup record that are popular in B2B use cases, including:

  • Assign New Customers to Site — ensures that a customer who registers on a site can only use that particular site (and customers from other sites cannot use the site)
  • Price Level — determines what the site’s default price level is (this is overridden for logged-in customers by what is set on their customer record)
  • Credit Sales Reps for Web Store Orders — determines whether sales created through the web site will count towards customers’ sales reps’ totals (eg for commission purposes)
  • Prices Include Tax — can be unset if you operate in a jurisdiction where B2C list prices are legally required to include VAT or sales tax
  • Shopping Cart Sharing Mode — lets you control whether contacts for a single customer (or company) share a single cart or each have their own
  • Require Login for Pricing — requires customers to be logged in before being able to view product prices and therefore checkout (similar functionality can also be implemented with Personalized Catalog Views)
  • Password-Protect Entire Site — requires customers to be logged in before able to view any page on the web site, except for the login page (similar functionality can be also be implemented with Personalized Catalog Views)
  • Type of Customer Registration — can be used to control whether only existing customers can use the site and whether new customers are able to self-register
  • Display Company Field on Registration Page — determines whether the Company name field is shown on the registration and checkout pages (and if it is required)
  • Create Customers as Companies — determines whether newly created customers are created as companies or as individuals
  • Allow Non-Credit Card Payment Methods During Checkout — is required if you plan to allow customers to use payment terms (ie lines of credit)
  • Minimum Order Amounts — allows you to set a currency threshold that prevents orders with a value less than that amount from being placed

If you require any of these settings (or, indeed, any setting in the web site setup record) to be different for your B2B or B2C customers, then you will need to operate separate sites.

Using a separate site will also require a separate domain.

For SuiteCommerce Advanced sites, operating a different site also enables you to use different site source code. This means that you can deploy non-extension code customizations to different customer customers.

Functionality Available Per-Domain

Separate domains can be if you want to offer a different experience to customers visiting the same site, and are required if you plan to operate a separate site.

Some functionality settings commonly thought of as being applicable to an entire site actually only apply to a particular domain of that site, and can therefore be configured on a per-domain basis. Popular in B2B use cases, these include:

  • Strike-Through Pricing — which can be used on B2B stores to compare the wholesale price to the retail price
  • Reorder Items — which can be used to streamline the buyer’s experience of repeatedly ordering the same products

In addition to the site configuration settings, you can also use a separate domain to:

  • Have a different web address (eg www.example.com for B2C and wholesale.example.com for B2B)
  • Activate a different theme
  • Activate different extensions

Using a different web address and theme can be a straight-forward way to change your branding and give the impression of a separate storefront. Keep in mind, however, that it will still be the same site ‘underneath’, so customers who are able to log in to one will be able to log in to other (although some per-customer settings can be used to control what they can see and do).

Perhaps the most important aspect of using a different domain is in the different extensions you can activate. In addition to any custom extensions you are using, some extensions built by NetSuite are more suited to B2B experiences, including:

  • Advanced Sign Up — is an alternate signup form designed for wholesale customers — includes an approval mechanism and can control access to the site
  • Grid Order — is an alternate way of showing Product Detail Pages for matrix items that streamlines the ordering of multiple variants of a parent product
  • Inventory Display — lets you show detailed stock levels and custom messaging on Product Detail Pages
  • Logo List — lets you add a list of images and text as a way of demonstrating to your customers which brands or lines your store stocks
  • Product Lead Time — lets you show the estimated wait for when an out-of-stock item will be available for purchase
  • Product Page Printer — lets customers generate an easily printable version of a product detail page — they can keep for their own records

Functionality Available Per-Customer

Individual customers can be configured to have access or privileges that are granted to them either personally or by virtue of being member of a group, role or segment. A crucial aspect of offering separate B2B and B2C experiences is segmenting your customers into these two categories and personalizing how they shop and buy accordingly. The following things popular in B2B contexts and are definable on a per-customer basis:

  • Access — lets you control whether a customer can log in to a web site (which is often used in conjunction with the Type of Customer Registration setting)
  • Absolute Pricing and Price Levels — lets you control how much particular customers or groups pay for your products
  • Personalized Catalog Views — let you tailor specific segments of your product inventory to specific segments of your customer base
  • Assigned Web Site — can be used across your customer base to limit which web sites your customers can access
  • Support Cases — are customer service tickets and a great way offering personal, in-context customer service
  • Credit Limits — can be used in conjunction with payment terms to limit how much a customer is allowed order on credit before they must pay existing debts
  • Invoicing and Payments, after accepting sales orders using payment terms, these self-service features enable customers to view and pay their invoices
  • Quotes, also known as estimates — are a way of building up and negotiating an order before it is placed
  • Reorder Items — lets customers quickly create new orders for products they have previously purchased

Whether you offer these features to your customers generally do not depend on whether you operate a separate site or domain, although whether a customer is able to use them depends on what settings or features you have enabled on the site they’re using.

Checking Your Entitlement

If you wish to use additional sites or domains, you must check whether you have available licenses to do so. To check your entitlement, go to Setup > Company > View Billing Information in NetSuite. Depending on your intentions and licenses, your Current Used Quantity should be lower than your Current Provisioned Quantity for:

  • Secure Customer Domain
  • SuiteCommerce Advanced Site Count
  • SuiteCommerce Site Count

If you do not have enough available, you will either need to deactivate an existing web site or domain that you no longer use, or speak to your account manager about purchasing more slots.

Segmenting B2B and B2C Customers

NetSuite includes a number of features and fields that can help you identify and segment your B2B customers from your B2C customers.

Customer Record Data

The first place to start is the Type field on the customer record that allows you to designate whether a customer is a company or an individual. Typically, it is better to classify B2C customers as individuals, and B2B customers as companies with individuals assigned to them as contacts.

The value of this field can be set manually or by workflow or script, but for new customers visiting your B2B web store, you should enable two options on the web site setup record:

This will give customers the option to add in their company name on forms, as well as create new customers as companies (existing customers are not converted).

Additionally, you may wish to add custom entity fields to your customer records – these can be used to capture custom data specific to your business and customers. Once you have these data, you can then use it for various purposes to help distinguish between your B2B and B2C customers.

Advanced Sign Up Extension

Building on this, you may opt to enforce a more rigorous registration process for business customers and, for that, we recommend using the Advanced Sign Up extension. This creates an alternate signup form with customizable fields that feed straight into their newly created record. Importantly, this extension includes a mechanism for both automatic and manual approvals that can not only give the user access but also automatically apply a particular user role and price level.

Saved Searches

A saved search is strongly recommended if you’re using the Advanced Sign Up extension as it is what powers the automatic approval process, and streamlines any manual approval mechanism. However, saved searches can also be used in other ways in SuiteCommerce, so it is a good idea to think in advance about how you will use customer data and the saved search tools to segment your customers.

Extensibility API

If you have written a customization that you wish to make available to only specific customers, you will need to find a way to toggle it based on customer data.

The UserProfile.getCustomerSegments() method can be used to retrieve group membership data about the current user. This can be used for generic groups (eg whether the user is logged in or not) or the customer segments that you have set up — the general idea being that you should add users to a specific customer segment and then write your customization to look out for membership of that group.

In addition to your extensions, this API can be also be used to retrofit controls to built-in functionality.

As a reminder, this API is only available on the frontend, so should be paired with backend validation or SuiteScript, if necessary.

Segmenting Your Product Inventory

When you segment your product inventory, you are determining specific products that are available to specific customers.

At a minimum, for a product to appear on any SuiteCommerce web store, its Display In Website field must be checked and its Inactive field must be unchecked. However, there are many factors that can control whether an item shows on any or all sites. For more information, see Troubleshooting Item Availability and Items Available to the Item Search API.

For the purposes of this section, we will discuss various strategies for controlling which audiences or customer segments can see your inventory.

Product Categorization and Uncategorized Items

Categorization is a simple way of achieving basic segmentation between sites. There are two forms available:

To achieve categorization, you may use either or both. Site Categories were introduced for Site Builder sites and are typically not recommended for use on modern SuiteCommerce sites as they have been supplanted by more sophisticated features, such as Commerce Catalogs, Commerce Categories, and Personalized Catalog Views. However, if you are already using them then may wish to continue using them (but note their limitations, such as being unable to use as part of your site’s category navigation).

At its base level, categorization works by associating a particular product with a particular site’s taxonomy. When a product is associated with a site, then it will show to the user; when it is not, it won’t.

There is another dimension to this, and that is when products are uncategorized. Put simply, if you do not set a Site Category on a product or assign it to a Commerce Category, it is flagged as an ‘uncategorized item’ by the system. On each web site setup record, you can opt to include or exclude uncategorized items. Therefore, depending on how you categorize (or don’t categorize) your products, you can control visibility of particular products on a particular site. For example, you may wish to have some products for exclusive visibility on your B2B web site – to do this you might categorize those products for your B2B web site and then configure that website (and not your B2C one) as inclusive of uncategorized items – this way, the B2B site will show all products, and the B2C one won’t see the B2B exclusive products.

It is important to note that if a product is categorized for even one site then it loses its ‘uncategorized’ status and will not show up on other sites even if those sites are set to show uncategorized products.

Generally speaking, if you are starting from scratch is better to categorize all your items rather than use the Show Uncategorized Items checkbox as it will give you more control over which products are shown on the site.

Personalized Catalog Views

Personalized Catalog Views (PCVs) are the recommended way of controlling access to and visibility of your inventory across difference audiences as they support:

  • Static (manual) or dynamically (automatically) generated segments
  • Distinctions between anonymous and logged-in visitors
  • Exclusive and non-exclusive views
  • Control of more than just item visibility, but also whether an item’s price shows or if it is purchasable

Conceptually speaking, PCVs are like maps between segments of customers and segments of products. For B2B and B2C, they are many scenarios that you could support:

  • Showing products to anonymous or logged-out users but hiding prices and preventing purchase until they register
  • Hiding prices from all users unless they have a custom price level set
  • Pairing down a large inventory so customers only see items handpicked for them
  • Allowing users to purchase small ticket items or replenishments, but preventing the purchase of big ticket items

PCVs can be used in conjunction with Commerce Categories; for example by using a Commerce Category as the item segment.

Setting Up Access Controls

Access controls having varying levels and can be a blanket block on all visitors to your site (except those you grant access to) to granular permissions around product information. Depending on your business use cases, you can (with varying degrees) control:

  • Who can view any page site
  • Who can register on the site
  • Who can view product prices
  • Who can view products
  • Who can place orders

In addition to these, access controls exist for various items of functionality and are mentioned in other places in this document (eg, access to quotes can be controlled with user roles but aren’t mentioned here).

Restrict Access to an Entire Site

If you wish to block all anonymous browsing of your website, you can use the Password-Protect Entire Site setting on the web site setup record. Users who visit any page on your site that are not logged in will be automatically redirected to the login page. This can be useful for forcing users to register first, but it can also be used to block search engine bots from scraping your site and to hinder competitors who might to gather information about your inventory.

See Restrict Access to Your Entire Site for more information.

If you enable this feature but wish to make some pages accessible to anonymous users, you can specify them as Public URLs.

Restrict Access to Specific Sites

If you operate multiple sites, you may want segment your customers so that some customers can access only one site. This can be achieved by ‘assigning’ a customer to a particular site. There are two settings required to do this:

  • On the customer’s record, go to Access > Assigned Website and select a website from the dropdown
  • On the site’s website setup record, go to Shopping > Registration Page > Assign New Customers To The Site and check the box

The first setting tells the system which site they are allowed to use; the second enforces it on the website (while also automatically assigning any newly created customers to that website, if they use its registration form).

A user who tries to use a site that they are assigned to will be prevented from logging into it.

Note the following restrictions:

  • An assigned site is the site specified on the website setup record, which includes all of its associated domains. If a site has multiple domains, the user will be able to use every domain associated with that site.
  • A customer may only be assigned to one website at a time. This can be changed in the NetSuite UI, and cannot be changed by the customer.
  • If a customer wishes to use more than one site, they will need a separate customer record for each site.

Restrict Access to Registration

Access controls can also be used in conjunction with the Type of Customer Registration setting, to determine whether customers are allowed to self-serve their own access. For example, combining a password-protected site with a disabled self-service registration flow forces only allows pre-approved users to log in to the site; typically this means that they need to contact you directly. While this limits the audience of customers who can use your site, it means you have the opportunity to approve each customer first.

This process is typically combined with the Advanced Sign Up extension to help capture additional customer details and help automate the process.

Restrict Access to Pricing Information

B2B businesses often have complex pricing arrangements, but there are also some cases when you hide or restrict access to pricing, including:

  • Preventing competitors and search engines from discovering your prices
  • You never publish your prices (ie, because you always negotiate them)
  • You wish to show prices to customers that are specific to them
  • Contractual or legal reasons, such as Minimum Advertised Prices (MAPs)

Restricting pricing information can be achieved in two ways:

See also Setting Up B2B Pricing and Discounts, below.

Restrict Access to Products

Individual or groups of items or just their prices can be prevented from being shown to customer segments.

See Segmenting Your Product Inventory, above.

Restrict Access to Ordering

Individual or groups of items can be prevented from being purchasable by customer segments.

See Personalized Catalog Views, above.

Restrict Access to the Checkout

In rare cases, you may to only offer customers the ability view products (and, optionally, assemble quotes or use My Account features) — effectively disabling the ordering system via the standard self-service checkout flow. This is not a use case in SuiteCommerce that is supported by a single setting, however you can use Personalized Catalog Views to prevent all items from being purchasable:

  1. Create a saved search that includes all your web store items, for example by including only those whose Display In Website checkbox is set to true
  2. Create a dynamic item collection to use that saved search
  3. Use the Customer Segments Manager to set the permissions for this item collection to Disable Purchase : All Users

This will prevent customers from being able to directly purchase the items but still use them in quotes.

You will then need to write customizations to remove or hide other related functionality, such as the cart, which will require code-level customizations. It is generally not advised to completely remove checkout and payment modules from SuiteCommerce, as they are used in My Account for reordering items and paying invoices.

Setting Up B2B Pricing and Discounts

One of the key aspects of operating separate B2B and B2C channels is that you will typically offer B2C customers products at ‘retail’ prices, and B2B customers products at discounted, ‘wholesale’ prices. However, in addition to the default blanket prices across your inventory in these channels, you may wish to use other (more complex) forms of pricing and discounts for your customers.

Price Levels

The most commonly used form of B2B pricing is to set different price levels for different customers – this is part of what NetSuite calls Multiple Pricing, and you can set up to 1,000 price levels, enabling you have to granular control over the level of discounting you offer your customers. For example, you may wish to:

  • Set a default price level for your web site, such as the retail price
  • Automatically assign B2B customers a generic wholesale price, for example using the Advanced Sign Up extension
  • Offer more generous discounts to loyal or high-value B2B customers by creating one or more ‘wholesale’ price levels

Keep in mind that price levels do not have to be used for discounting only – you can also use them to mark up products, therefore making them more expensive for certain groups of customers. This might be useful if your ‘default’ prices are for wholesale customers and you need to price them for retail.

Quantity Pricing

Also referred to as ‘volume pricing’, quantity pricing is where a customer is given a discount if they order a large quantity of an item at once. This is useful in B2B scenarios where sellers make up for reducing the margins on the unit price for items by having a large transactional volume.

There are nuances to quantity pricing that are supported in SuiteCommerce and include:

  • How are discounts are calculated, either absolutely or marginally
  • How quantities are calculated, such as by line quantity, overall item quantity, overall parent quantity (for matrix items) or by schedule quantity

SuiteCommerce not only respects quantity pricing discounts but will also show a table on product pages with the various quantities and unit prices that have been set on the product record.

Absolute Prices

Another form of Multiple Pricing is Absolute Pricing. Absolute prices are set on the customer record and are specific to particular products, overriding any other pricing (such as those set by a price list). Using this feature you can either assign a customer a different price level for specific items or add a custom price that is specific to them and the product. This is useful when a business has signed an agreement with a customer to always sell a particular product at a particular price, hence why it is sometimes called ‘contract pricing’.

In B2B contexts, these are useful as you may have personally negotiated a price with a customer and do not want to use a more cumbersome process for overriding a particular price when all you need is an exception to an existing price level.

Promotions

Just like in B2C contexts, promotions through coupon codes and automatically applied discounts are available in B2B ones too.

Promotions are combinable with any price levels or customer-specific pricing arrangements you make, but you should exercise caution if you use absolute pricing: fixed price item promotions override price levels and absolute prices, even if the absolute or price level price is less than the one set in the promotion.

In addition to standard features, such as date effectivity or single-use coupon codes, SuiteCommerce includes some eligibility controls that are notable for B2B use cases:

Therefore, you may wish to combine these with your customer segments and website assignments.

Ad Hoc Quote Discounts

SuiteCommerce supports the self-service creation and viewing of estimates assigned to a customer. While a customer cannot set an ad hoc discount themselves, it is possible for a salesperson to do this When preparing an estimate in NetSuite. Accordingly, there are two ways to support ad hoc discounts:

  • Using the Rate field to manually modify the prices of the line items
  • Using the Discount Item field to apply a flat discount to all line items

These can be used to make a one-time discount of either a percentage or fixed amount to the estimate and, in B2B contexts, is commonly used during negotiation with a customer. If a discount is applied, it will be shown to the customer when they view it in My Account.

Strike-Through Pricing and MSRP

When viewing products, customers always see the price that is applicable to them (depending on the context, such as whether they are logged in or not). However, another price can also be shown, which is useful for comparison purposes. Typically, this price is greater than their price and has been struck-through to indicate a discount. This is commonly referred to as the manufacturer’s suggested retail price (MSRP) or recommended retail price (RRP).

In SuiteCommerce, this is achieved by creating and assigning a particular price level as the designated comparison price and then setting up strike-through pricing in the configuration record. Strike-through pricing is also used on matrix items, where the parent product price is greater than the currently selected child’s.

Setting Up B2B Quoting

Quotes (also known as estimates) are an essential part of B2B business practice. Rather than immediately creating an order, a customer instead creates or views a ‘draft’ order of their items, which can be modified and negotiated before being converted into a submitted order.

While SuiteCommerce’s default flow is a typical ecommerce experience (where a customer adds items to a cart, which is then converted into a sales order via the checkout), a secondary flow is available. Accordingly, SuiteCommerce sites support estimates as a separate ‘quoting’ flow that can be used to generate records in NetSuite, handle the back-and-forth of negotiation, and convert it to a sales order. Some of the features include:

  • Add to Quote buttons on product detail pages
  • A dedicated Request a Quote page, which enables customers to build and submit quotes by themselves
  • A dedicated section in My Account to review and approve open and historical quotes

While some quoting functionality can be configured on a per-domain basis, it is typically recommended that it is controlled by the assignment of permissions and roles; this effectively means that it can configured on a per-customer basis.

For more information, see Quotes for Commerce Websites.

Product Lists

Related to carts and quoting, is the product list functionality. This enables customers to build up lists of products that they are interested in, and then move them between the list and cart (or submit them as a quote).

Product lists can be viewed and created by sales reps in the NetSuite CRM, and can be a valuable tool during discussions for recording a customer’s interest or for making suggestions to them.

Setting Up B2B Payments

One of the facets of a B2C checkout flow is that payment is usually authorized during order submission and that it usually involves a credit or debit card. As B2B differs from this standard flow, so does what is typical around payments:

Lines of Credit, Credit Limits and Payment Terms

SuiteCommerce supports typical use cases around accepting orders on credit, preventing customers from going above their credit limit and highlighting important information, such as account balance and whether an invoice is overdue.

Credit limits are applied individually to each customer, which means that you can specify how much each one is allowed to spend on your store. The enforcement of credit limits is universal, which means that it is an account-level feature – however, it can overridden on a per-customer basis by editing their customer record.

In addition to setting a credit limit, you should also set payment terms, which, again, are controllable on a per-customer basis.

There is a part in the My Account section of the site dedicated to managing billing, including:

  • Account Balance — shows an overview of their credits and debits, spending limits and what payment terms they are on
  • Invoices — shows them the bills they have been sent with the option to pay outstanding balances
  • Transaction History — tracks their history of payments, but can also show other types of transaction (such as deposits and credit notes)
  • Print a Statement — collates recent credits and debits into a printable PDF

All of these tools are self-service and so are a great way to encourage your customer to take control of managing their account with you as well as minimizing your costs.

Billing and Invoicing

When payment isn’t captured at the time an order is placed (ie because it has been put on credit) then the customer can be billed, requesting funds. In addition to the standard functionality in NetSuite (such as emailing a customer an invoice), SuiteCommerce supports this by having a dedicated section in My Account related to billing, including:

  • Showing a list of invoices, highlighting those that are open and require action
  • Supporting online payment of bills, including credit and debit cards, and ACH transfer
  • General administrative tools, such as the self-service creation of statements for particular dates

Encouraging customers to use self-service features like these can cut down on the amount of account administration work your reps have to do, as well as making it easier to get paid. For example, customers can use My Account to pay multiple invoices at once.

Access to these features are governed by the permissions assigned to the user’s custom Customer Center role.

As part of the broader categorization of these pages as transaction lists, it is possible to configure the record tables and show different fields in the list of invoices (such as a custom field).

Requesting Payment

In addition to the standard NetSuite features for requesting payment, SuiteCommerce also offers the Direct Invoice Payment feature. When set up, invoicing emails sent to customers via NetSuite will include a link to the website where they can log in, view the invoice, and pay it.

Direct Invoice Payment is similar to Payment Link but offers customers the ability to log in and use stored payment details.

ACH Payments

While credit and debit cards are the most popular payment methods in ecommerce, many B2B businesses are adopting Automated Clearing House (ACH) payments as an alternative form of payment. Rather than use a network of card processors, ACH facilitates the electronic transfer of funds between bank accounts, and can therefore side-step the processing fees associated with these networks.

ACH can be used for both checkout and invoice payments, and details can be stored and reused later.

In order to accept ACH payments, you will need to have set up a payment processing profile that uses a SuitePayments payment processor that supports ACH, such as NetSuite Pay.

For more information, see ACH Payments.

Setting Up Reordering

Many B2B relationships are for repeated orders of the same goods, and SuiteCommerce offers a streamlined experience for this. In My Account, customers can see a list of their previously ordered items with options to sort and filter the list, and calls-to-action for adding them to the cart.

Reordering can be enabled on a per-domain basis.

For more information, see Reorder Items.

Setting Up Cart Sharing

Business often have multiple people within their organization who are authorized to make purchases. SuiteCommerce supports this through customer-to-contact relationships, where a single customer can have multiple contacts (ie users) associated to them; this means each person has their own login to a web store but all act as a single customer.

One particular consideration for you is you want all contacts at an organization (ie a customer) to share a cart or if each contact gets a separate one. This can be configured on a per-site basis using the Shopping Cart Options for Business Customers setting.

Regardless of the option chosen, the orders are still rolled into the single customer entity, it is tracked which particular person placed the order, and (optionally) all contacts at a customer can be notified of the order.

Setting Up Sales Rep Association

B2C customers do not typically have sales reps, as the experience is almost always entirely self-service. In B2B scenarios, the self-service aspects are balanced by some rep interaction. You can set a customer’s sales rep on their customer record.

In SuiteCommerce, there are two important settings worth considering:

The first, Credit Sales Reps for Web Store Orders, determines whether sales created through the web site will count towards customers’ sales reps’ totals (eg for commission purposes). This can be important because even though the sales rep is not the person creating the sales order, they may have still played a significant role in either acquiring the customer or helping them with sales.

The second is setting up NetSuite to associate new web store registrations with particular sales reps. While they may not have played a role in acquiring the lead, they may still need to work with the lead to qualify and develop the relationship, leading them to set up new sales orders.

  1. Navigate to Setup > Sales > Sales Rules > New
  2. Scroll down and select Web Lead
  3. Give the rule a name
  4. Set Criteria to Equal To and check Web Lead
  5. Select Save
  6. Navigate to Setup > Sales > Sales Territories > New
  7. Give the territory a name
  8. Select Match Any Rule radio button
  9. Under Configure Rule Definitions, select the rule that was previously created
  10. On the Lead Assignment tab, select a preferred sales rep
  11. Click Save
  12. On the list of sales territories, ensure the new territory is ranked above all others, by clicking and dragging the territory up the list

Setting Up Support Cases

A good B2B ecommerce experience should also include pre- and post-order service, and customers have the ability to view and create support cases in My Account.

Access to support cases is governed by the role and permissions assigned to the user.

Final Thoughts

The above list is a collection of B2B functionality available in SuiteCommerce, and, varyingly, SuiteCommerce MyAccount and SuiteCommerce Advanced. As developers on SuiteCommerce, it is important to recognize that many features and functionality are already available in NetSuite and SuiteCommerce and that configuring them to match the business’s requirements can be much easier and more powerful than trying to write something custom.

You should also be aware that a complete B2B experience is more than just the functionality and features your web store provides — it can include things outside what you might typically expect, such as payments, order management, customer service and more. The big benefit of running B2B ecommerce on NetSuite and SuiteCommerce is that it is all unified together. This means that all your data is one place, your business systems are seamlessly unified together, and processes and settings only need to be set up once and managed in one place.