This article is relevant if you are working with NetSuite’s Site Builder (legacy) Scripted Cart and you are confused about the way you reference the underlying Sales Order.
Background
During our development of Bitcoin integration via the BTC4ERP NetSuite Bundle add-in, we were exploring different ways we could enhance the NetSuite Scripted Cart capacities so that customers could seamlessly pay for their shopping cart contents with the new crypto currency. Our intention was to treat it as a Payment Option during the eCommerce checkout and present a Bitcoin address with payment instructions on the Order Confirmation (Thank you) page.
NetSuite’s Scriptable cart offers a capacity to run SuiteScript to reference fields on the underlying Sales Order supporting the shopping cart and check out. Since we connect a Bitcoin Transaction Request to the Shoppers Sales Order on the backend, it was only natural to want to leverage SuiteScript to drive messaging using the <%=getField()%> syntax.
Once Web Order is Submitted, NetSuite Creates a New Background Sales Order
In our use case, we first sought to have the user commit the order. We would then generate the Bitcoin instructions and subsequently show them to the shopper. However, when you reference the Thank You page via <%=getField()%>, you are given a new Sales Order number in preparation for continued shopping. The confusing part is that NetSuite gives you a “Customize Text Group” order id parameter that allows you to get the just committed order number leading you to believe that the number is your active sales order reference. See image to better illustrate.
Bottom line, we had to produce a client side JSONP call to a NetSuite custom SuiteLet to get the information we needed. Not at all unusual in the legacy shopping cart environment.
Get Help
If you are seeking to innovate on the NetSuite platform, contact us. We can help.