Version: eXtendPS-SE 1.3.6.7 and above
Audience: Administrator, Developer

Overview

There are three methods for sending an item's Unit of Measure (UOM) in the PromoStandards Invoice service.

Configuration

The Unit of Measure (UOM) in the eXtendPS-SE Invoice response can be configured in one of the following ways:

1. Hardcoded Unit of Measure 

When the associated NetSuite account does not have the MULTIPLE UNITS OF MEASURE feature enabled, the UOM for an item will be sent in the Invoice response using a hardcoded value provided in the transformers file.

To specify a PromoStandards enumerated UOM value, you can modify the getInvoiceData() function in the "suite_promoapi_invoice_transformers.js" file. See the snippet below for an example:

invoiceResponse.InvoiceLineItemsArray.InvoiceLineItem.forEach(function(lineItemData) { lineItemData.quantityUOM = "Each" })

2. Item's Mapped Unit of Measure

When NetSuite's MULTIPLE UNITS OF MEASURE feature is enabled and when UOM mappings are in place on the eXtendPS-SE Invoice Setup screen, the mapped PromoStandards UOM will be sent.

UOM values supported by PromoStandards (as of 2023-10-03):
  1. BX (Box)
  2. CA (Case)
  3. DZ (Dozen)
  4. EA (Each)
  5. KT (Kit)
  6. PR (Pair)
  7. PK (Package)
  8. RL (Roll)
  9. ST (Set)
  10. SL (Sleeve)
  11. TH (Thousand)
Image Placeholder

3. Unit of Measure for Unmapped Value

When NetSuite's MULTIPLE UNITS OF MEASURE feature is enabled and when the UOM for an item is not mapped with a PromoStandards UOM, you need to specify a default value to use as the UOM in the getInvoiceData() function within the "suite_promoapi_invoice_transformers.js" file.

The example below sets "Each" as the default UOM when no mapping exists in the eXtendPS-SE Invoice Setup screen or when the line item's UOM isn't mapped to a PromoStandards UOM.

Note: You can change the value of the default UOM as per the UOMs supported by PromoStandards.
invoiceResponse.InvoiceLineItemsArray.InvoiceLineItem.forEach(function (lineItemData) {
   lineItemData.quantityUOM = lineItemData.quantityUOM || "Each"
})