Wiring the Juice procurement portal straight into NetSuite
B2B Procurement Portal · NetSuite · UK
- Vertical
- IT reseller & managed services
- Scope
- Business customers — UK
- Platform
- AspDotNetStorefront 9.1 with Mercante extensions; .NET integration services
- Commerce model
- B2B · Integration
- NetSuite
- Etilize
- OneTrail
- Saverstore
Kettering-based IT reseller and services business supplying hardware, software and lifecycle services to organisations across the UK. Its customers don't shop like consumers. Each one buys from an agreed product list, at its own negotiated price, against a purchase order — and often only after someone senior has signed the order off. Customers, products and prices all live in NetSuite, while product content and distributor pricing come from outside it.
Wired In Commerce built Juice, an online purchasing system, and the integration layer that ties it to NetSuite. Customer accounts, contacts and price tiers flow in from the ERP automatically. Products are assembled from three sources: NetSuite decides what is sold, Etilize supplies specifications and images, and OneTrail supplies distributor pricing. Each customer sees their own catalogue and prices, checks out on a purchase order, and approvers sign off with a PIN. Approved orders post straight into NetSuite as sales orders.
The companies trade model doesn't fit an off-the-shelf store. A customer's price depends on their customer group, their agreed discount or margin, and which products they have been approved to buy. Distributor prices move constantly. Product content — specifications, images, categories — had to come from somewhere other than the ERP, which holds a part number and a price and little else.
Keeping a web store in step with all of that by hand doesn't scale. Every new buyer needs an account, a price tier and the right catalogue. Every product needs content before it can be sold. Every web order has to be rekeyed into NetSuite, and orders that need sign-off get chased by email. Each manual step is a chance for the website and the ERP to disagree.
One customer record in NetSuite, reflected everywhere it matters. Customers, products, prices and orders move between the ERP and Juice on a schedule — nobody rekeys an order.
NetSuite is the system of record. Etilize and OneTrail fill in content and prices, and nothing returns to NetSuite until an approver signs the order off.
Technical highlights
Accounts created from NetSuite, not by hand — an incremental sync turns each NetSuite contact into a Juice login with addresses and a price tier taken from the customer group. Web access is switched on or off by a flag in NetSuite, and new customers receive a welcome email.
One product, three sources — NetSuite decides what is sold; Etilize supplies names, descriptions, spec tables, images, accessories and the category tree; OneTrail supplies distributor pricing. Missing categories are created automatically, and products publish or unpublish to follow their NetSuite status.
Prices per customer, rebuilt in set-based SQL — three standard tiers come from a category discount book, and individual customers can be priced at cost plus an agreed margin. Every OneTrail price file triggers a rebuild of each customer's pricing and product visibility.
My Products, not the whole catalogue — each customer gets their own approved product list in a dedicated tab, including customer-only items that never appear in the public catalogue. Empty categories hide themselves.
Approval before the order leaves — buyers check out on a purchase order. Where a customer has an approver, the order is held and the approver signs it off with a PIN from an encrypted email link; only then is it exported to NetSuite as a sales order, lines matched by MPN.
Syncs that catch themselves up — each sync keeps a watermark and works forward one day at a time. A bad record is logged and skipped, the failed window is retried on the next run, and NetSuite calls retry up to five times.
Before
Customer accounts and price tiers set up by hand for every new buyer
Product content and distributor prices maintained manually
Web orders rekeyed into NetSuite, approvals chased by email
After
Accounts, contacts and price tiers created automatically from NetSuite
Specs, images and distributor prices refreshed from Etilize and OneTrail
Approved orders post straight into NetSuite as sales orders