Join us at SuiteConnect 2026 in San Francisco on April 28 Book a Meeting

14 minutes Read

Published On

Use the Shipping Item List as a Select Option in a Suitelet

When building Suitelets in NetSuite, you often need to display dynamic data as dropdown options. One common requirement is to use the Shipping Item list as a select field, allowing users to choose shipping methods directly within the Suitelet.

This guide walks you through how to fetch shipping items and use them as selectable options in a Suitelet.

Why Use Shipping Items in a Suitelet?

Instead of hardcoding shipping methods, pulling them dynamically from NetSuite ensures:

  • Data consistency across transactions
  • Real-time updates when shipping methods change
  • Better user experience with accurate options
Following is the tutorial taken from SuiteAnswers which shows how to create a select field having Shipping Items/Shipping Methods in Suitelet:

Use the Shipping Item List as a Select Option in a Suitelet

  1. Create a custom record type

    • Navigate to Customization > Lists, Records, & Fields > Record Types > New
    • Set the name – Shipping List
    • Set the ID – _rec_ship_list
    • Access type = no Permission Required
    • Save
  2. Add a custom field that will source the Shipping Item List

    • Edit the Record created from Part A.
    • Click on new field
    • Set the name – shipping item list
    • Set the ID – _shipping_list  
    • Type = List/Record
    • List/Record = Shipping Method
    • Save
  3. Create a new Record (Shipping List)

    • Open the custom record (Shipping List)
    • Click on View Records
    • Click on new
    • Set a Name to the record and Save
    • Take note of the Internal Id for this new record.
This Custom record will be used to access the shipping items.
 
Suitelet Script that will show a field with the shipping items as the select options.
 
Script:
function demoSimpleForm(request, response) {
    if (request.getMethod() == 'GET') {
        var form = nlapiCreateForm('Simple Form');
        var cusRec = nlapiLoadRecord('customrecord_rec_ship_list', 1);
        var shipFld = cusRec.getField('custrecord_shipping_list');
        var options = shipFld.getSelectOptions();
        var select = form.addField('custpage_selectfield', 'select', 'My Custom shipping item');
        select.addSelectOption('', '');
        for (var i = 0; i < options.length; i++) {
            select.addSelectOption(options[i].id, options[i].text);
        }
        form.addSubmitButton('Submit');
        response.writePage(form);
    } else {
        dumpResponse(request, response);
    }
}
 
This way we can fetch saved search’s name which is impossible by making/invoking saved search on saved search in SuiteScripts.
SuiteAnswer Id: 32174

Common Issues and Fixes

Dropdown Not Populating

If your dropdown is not showing any shipping methods, the first thing to check is whether shipping items actually exist in your NetSuite account. Sometimes, the issue is as simple as an empty list or inactive records. Also, confirm that your search type is set correctly to shipitem, as using the wrong type will return no results.

Incorrect Labels

If the dropdown values don’t look user-friendly, it’s likely due to the field you’re using for display. By default, itemid is used, but in some cases, it may not be descriptive enough. Switching to displayname or a more meaningful field can improve clarity and make selection easier for users.

Permissions Issue

If the script works for some users but not others, it’s likely a permissions problem. Make sure the role being used has access to shipping items and related records. Without proper permissions, the search will fail silently or return empty results.

Best Practices

When adding a select field in a Suitelet, always include a default “Select” option. This ensures users don’t accidentally submit a form without making a valid choice.

It’s also a good idea to filter out inactive shipping methods so users only see relevant options. This keeps the dropdown clean and avoids confusion during selection.

Use clear and user-friendly labels for each option. The goal is to make it easy for users to understand and choose the correct shipping method without second-guessing.

If you’re dealing with a large number of shipping items, consider optimizing your script. This can include filtering results, limiting fields, or using caching techniques to improve performance.

Final Thoughts

Using the Shipping Item list in a Suitelet dropdown keeps your data dynamic and fully aligned with NetSuite. It eliminates the need for hardcoding values and ensures that any updates to shipping methods are reflected automatically.

This approach not only improves accuracy but also enhances the overall user experience by providing up-to-date and consistent options directly within your custom interface.

Stuck on a Step?

If your Suitelet isn’t fetching shipping items correctly, the issue is usually related to search configuration, incorrect field mapping, or missing permissions. Even a small misconfiguration can prevent data from appearing as expected.

Take a moment to review your search setup, field IDs, and role permissions. If the issue persists, getting expert input can help identify and resolve the problem quickly.

NetSuite Alliance Partner

Working with a NetSuite Alliance Partner can make a significant difference when building custom solutions like Suitelets. Instead of trial and error, you get structured implementation and optimized scripts from the start.

An experienced partner can help design custom Suitelets tailored to your workflows, optimize performance for better scalability, and ensure proper data handling across your system. This allows you to build reliable, efficient solutions that align with your business needs.

Get in touch with us today.

Table of Contents

Contact Us

By submitting this form, you agree to our privacy policy and terms of service.

Related resources you might be interested in

We'd love to help you with all your NetSuite needs

Folio3 Your Top Choice:

Middle East Partner 2025
education award 2025
Winner Award
Software and IT Services 2024
Financial-Services-2023
SuiteCommerce 2023

Let's discuss your NetSuite needs

Hello, How can we help you?