FSM Item Fulfillment Record

An item fulfillment is a standard NetSuite transaction that records the items and quantities fulfilled from an originating order. NetSuite Field Service Management (FSM) uses item fulfillments for sales order fulfillment, fulfillment of recorded consumables, and outgoing stock transfers. An item receipt separately records stock received at a transfer's destination.

The fulfillment stores shipment and inventory data and can reference the related service work. On an editable sales order fulfillment, FSM can also stage values for creating or updating assets. Saving the fulfillment and completing those asset changes are separate results.

Record Information

The following table summarizes the record's identity and supplied FSM form.

Property

Value

Record type

Standard NetSuite transaction

Record name

Item Fulfillment

Record ID

itemfulfillment

FSM model

models/itemfulfillment

Record identity

Internal ID (internalid) identifies the record. Ref. No. (tranid) identifies the transaction in the interface.

Supplied FSM form

Field Service Item Fulfilment (custform_nx_item_fulfillment)

itemfulfillment is the SuiteScript record identifier used by FSM. ITEMFULFILLMENT is the corresponding record-type value in the supplied form and script-deployment definitions. It is not a separate record. For native scripting and transformation constraints, see Item Fulfillment.

Forms

FSM supplies the Field Service Item Fulfilment transaction form. Its supplied definition is active and is not marked preferred. An account can use its own form. Asset staging requires the configured transaction tab and the fields that supply staged values. See Configuring FSM Asset Processing from Item Fulfillments.

NetSuite always stores the custom form used with an item fulfillment. Store Form with Record is therefore not an optional switch for this transaction type. The stored form governs the presentation when the transaction is reopened. See Storing Custom Forms with Transactions.

On the supplied form, Customer (entity), Date (trandate), and Custom Form (customform) are required. The six supplied FSM header fields listed in Header Fields are not required on the supplied form. These are form requirements, separate from NetSuite transaction validation and feature-specific requirements.

The standard Sales Order and Return tabs in FSM Mobile present their respective order records and create related fulfillments during synchronization. FSM Mobile has no separate standard tab for editing item fulfillments. The Sales Order and Return tabs don't reproduce the Create/Update Assets sublist in NetSuite. An FSM Mobile resource's form-generated fields are separate from the custom form stored on a transaction. For information about how forms load in FSM Mobile, see Form Properties.

Record Relationships

The following table describes relationships with other records.

Related Record

Relationship and Field ID

Purpose

Sales order or transfer order

The fulfillment's native Created From (createdfrom) references its originating order. Several fulfillments can reference the same order.

Identifies the order being fulfilled. Fulfillment item lines retain their source-line reference through item.orderline.

Customer

The fulfillment stores native Customer (entity) for customer-order context and the supplied Field Service Customer (custbody_nx_customer) reference.

Keeps the FSM Customer value available separately. Asset staging takes its Customer from the FSM field.

Case

The fulfillment stores Field Service Case (custbody_nx_case). Each item line can separately store Field Service Case (trans) (custcol_nx_case).

Associates the transaction and individual lines with service requests. These references don't set the case's selected Field Service Transaction (custevent_nx_case_transaction).

CRM task

The fulfillment stores Field Service Task (custbody_nx_task). Each item line can separately store Field Service Task (trans) (custcol_nx_task).

Identifies service-work context at header and line level. Sales Order update processing in FSM Mobile uses the header Task relationship when selecting fulfillments for replacement.

Project task

The fulfillment stores Field Service Project Task (custbody_nx_projecttask). Each item line can separately store Field Service Project Task (trans) (custcol_nx_projecttask).

Provides the separate project task relationship. It is not a CRM task reference.

Asset

The fulfillment stores Field Service Asset (custbody_nx_asset). Each item line can separately store Field Service Asset (trans) (custcol_nx_asset).

The header asset supplies the parent for staged asset rows. A line asset identifies equipment associated with that line.

Consumable

Each item line can store Field Service Consumable (custcol_nx_consumable), referencing customrecord_nx_consumable.

Connects the fulfilled line to recorded usage. The consumable's Billing Transaction (custrecord_nx_constransaction) references its sales order, rather than this fulfillment.

Asset created or updated from fulfillment

The asset stores Transaction (custrecord_nx_asset_transaction), referencing the fulfillment supplied during asset processing.

Records the transaction association on the asset. The temporary Asset selector on the fulfillment is not a persisted list of all resulting assets.

Inventory detail

Each applicable item line holds the native Inventory Detail subrecord (item.inventorydetail) and its Inventory Assignment sublist (inventoryassignment).

Records the stock assignments for that fulfilled line.

The FSM references are supplied custom fields. Created From, order-line identity, and inventory detail are native NetSuite relationships. Header and line references are separate values and need not describe identical scopes. Adding an account custom link doesn't automatically add inheritance, presentation in FSM Mobile, history, reporting, or synchronization behavior.

For the related data definitions, see FSM Asset Record, FSM Case Record, and FSM CRM Task Record.

FSM Fields

Field labels can vary by account and form. The field IDs in the following tables distinguish header fields, item-line fields, and temporary form controls.

Header Fields

The following table lists the FSM header fields.

Field

Field ID

Purpose and Important Values

Field Service Customer

custbody_nx_customer

Customer reference used by FSM. Supplies Customer to staged asset rows.

Field Service Asset

custbody_nx_asset

Asset reference. Supplies Parent to staged asset rows. It doesn't identify every asset created by the fulfillment.

Field Service Case

custbody_nx_case

Case reference. The field definition sources the Case from the header CRM task when that sourcing applies.

Field Service Task

custbody_nx_task

CRM task reference. Consumable fulfillment and Sales Order fulfillment in FSM Mobile can explicitly supply it.

Field Service Project Task

custbody_nx_projecttask

Project task reference supplied by applicable processing in FSM Mobile. Separate from Field Service Task.

Field Service Idempotency Key

custbody_nx_idempotency_key

Older custom identity field retained for compatibility and visibility. Doesn't indicate whether asset processing was requested or completed.

Standard creation processing in FSM Mobile uses native External ID (externalid). Don't infer an independently generated fulfillment's identity from the originating order's key.

All six fields store their values. The supplied field definitions don't require values and specify no fixed default values. Transformation, field sourcing, and the creation operation can supply values. This doesn't establish one universal set of defaults for every fulfillment source.

For current creation identity in FSM Mobile, see FSM Mobile Duplicate Creation Protection.

Item-Line Fields

The following supplied fields belong to the native Items sublist (item). Use item.<field ID> when identifying their location in record mappings.

Field

Field ID

Purpose and Important Values

Field Service Asset (trans)

custcol_nx_asset

Line asset reference. Its field definition sources from the line CRM task's Field Service Task Asset when that sourcing applies.

Field Service Case (trans)

custcol_nx_case

Line Case reference. Its field definition sources from the line CRM task's Case when that sourcing applies.

Field Service Task (trans)

custcol_nx_task

Line CRM task reference. Separate from the fulfillment header's Task.

Field Service Project Task (trans)

custcol_nx_projecttask

Line project task reference. Separate from the header's project task and the line CRM task.

Field Service Consumable

custcol_nx_consumable

Consumable reference used to connect usage, sales order lines, and fulfillment lines. It doesn't establish that all usage for the task was fulfilled.

All five fields store their values. The supplied field definitions don't require values and specify no fixed default values. The originating order and applicable field sourcing provide line context. A field's presence doesn't mean every creation path populates it.

Native Fulfillment and Inventory Data

The following table describes native item fulfillment and inventory data used by FSM.

Field or Data

Field ID or Location

Meaning in FSM

Created From

createdfrom

Originating order reference. FSM creates fulfillment transactions through transformation of that order.

Date

trandate

Fulfillment transaction date. Separate from task activity timestamps.

Shipping status

shipstatus

Picked (A), Packed (B), or Shipped (C) where the corresponding NetSuite shipping stages apply. The automatic fulfillment operations for consumables, Sales Order in FSM Mobile, and Return explicitly set the status to Shipped.

Fulfill selection

item.itemreceive

Identifies a transformed item line selected for fulfillment. It is separate from a stock-receipt transaction.

Item

item.item

Item fulfilled on the line. The item's Field Service Asset (custitem_nx_asset) setting determines eligibility for asset staging. That setting belongs to the item record.

Line, order line

item.line, item.orderline

Fulfillment-line identity and the reference to the originating order line. An item ID alone doesn't distinguish repeated lines for the same item.

Quantity, remaining quantity

item.quantity, item.quantityremaining

Quantity on the fulfillment line and quantity available on the transformed line. FSM's fulfillment map reads absolute search quantities. Remaining quantity is not a whole-order completion indicator.

Location

item.location

Inventory location for the line. Separate from the shipping address or an asset's service address.

Shipping address

shipaddresslist, shipaddress, shippingaddress subrecord

Selected address-book entry, displayed address text, and structured shipping-address data. Supplies address values for asset staging.

Advanced inventory assignments

item.inventorydetail → inventoryassignment.quantity, issueinventorynumber, binnumber

Assignment quantities, issued serial or lot numbers, and bin references, according to the enabled NetSuite inventory features.

Basic inventory fields

item.serialnumbers, item.binnumbers

Serial or lot numbers and bin values used when Advanced Bin/Numbered Inventory Management is not enabled.

Shipped describes the items and quantities included in this fulfillment. It doesn't confirm that the entire order is fulfilled, that a transfer has been received, or that asset processing finished. Fulfillment and invoicing depend on the Advanced Shipping setting in NetSuite. See Item Fulfillment.

Inventory-field availability and valid assignments depend on the item, location, and enabled inventory features. For information about supported inventory features and Inventory Status limitations, see FSM Consumable Processing and FSM Mobile Sales Order Management.

Asset Staging and Processing Indicators

Create/Update Assets (custpage_nx_assets) is a temporary form sublist. The rows describe proposed asset data submitted with the fulfillment. The row values are not stored in custom transaction columns.

Staged Value

Default Page-Control ID

Meaning and Source

Item

custpage_nx_assetsitem

Item from the fulfilled line. Required and disabled for editing in the standard sublist.

Serial Number

custpage_nx_assetsserial

Proposed asset serial text. Required in the standard sublist. Serialized inventory detail can supply it where applicable.

Asset

custpage_nx_assetsid

Matching existing asset selected by FSM. Disabled for editing. An empty value identifies a row requesting creation.

Customer

custpage_nx_assetscustomer

Copied from custbody_nx_customer. Hidden by default.

Parent

custpage_nx_assetsparent

Copied from custbody_nx_asset. Hidden by default.

Address Book

custpage_nx_assetsaddressbook

Shipping address-book selection from shipaddresslist. Hidden by default. A custom or overridden shipping address clears this staged selection.

Address

custpage_nx_assetsaddresstext

Prepared shipping-address text. Disabled for editing.

These are generated default control IDs, separate from the fields stored on the resulting asset. The standard FSM staging component requires Item and Serial Number values. These requirements don't apply universally to item fulfillments or asset records. Parent inheritance can replace the staged Customer and address values. See FSM Asset Processing from Item Fulfillments for preparation, matching, validation, and processing outcomes.

The fulfillment page can show Pending Processes or Failed Processes with New Assets in the message. These messages are calculated from related scheduled-script instances and are not stored fulfillment fields. The Pending Processes message can appear when a related script execution is pending or processing. The message alone doesn't confirm that execution has started. Failed Processes identifies a failed related execution. Saving the fulfillment, a cleared message, or a completed execution doesn't establish that every expected asset was created or updated.

The supplied fulfillment fields contain no dedicated asset-processing completion checkbox or Field Service Error link. For information about asset-processing outcomes, see FSM Asset Processing from Item Fulfillments. For information about monitoring script execution, see FSM Script Reference.

Creation and Update Sources

The following table describes how different sources create or update item fulfillment records.

Source

Effect on the Record

NetSuite order fulfillment

Creates a fulfillment from an originating order, with the selected quantities and inventory details. Native transaction and account rules apply.

FSM Consumable Processing

Background processing transforms a sales order and supplies the CRM task, stock location, matched order lines, quantities, and assignments. Qualifying saved fulfillments use Shipped status.

FSM Mobile Sales Order Management

During synchronization, creates Shipped fulfillments for eligible sales order lines, grouped by location. With automatic fulfillment enabled, updates can delete and replace fulfillments selected by order and the current header Task relationship.

FSM Mobile Return

During synchronization, creates a Shipped fulfillment for eligible outgoing transfer order lines. With automatic fulfillment enabled, Return updates can delete and replace the order's linked fulfillments.

FSM fulfillment form handling

Adds asset staging controls and submits their values for background asset creation or updates. The resulting Transaction reference is stored on the asset.

Warning: Update and deletion paths in FSM Mobile can remove existing fulfillment records before later steps succeed. Replacement creates new fulfillment records. The earlier record's identity is not a permanent identifier for the order's shipment history. For information about fulfillment selection criteria and failure consequences, see FSM Mobile Sales Order Management and FSM Mobile Stock Transfers.

The FSM model models/itemfulfillment has no explicit default values. Automatic fulfillment operations supply Shipped status and task and location values. These values are not universal record defaults. A local save in FSM Mobile doesn't confirm that a fulfillment was saved in NetSuite.

Used by FSM Features

The following table describes how FSM features use item fulfillment records.

Feature

Record Use

FSM Asset Processing from Item Fulfillments

Supplies fulfilled units, staged values, and the Transaction reference for asset creation or updates.

FSM Consumable Processing

Records fulfillment of eligible consumable sales order lines through background processing.

FSM Mobile Sales Order Management

Records eligible line fulfillment during Sales Order synchronization and supplies fulfillment inventory details to subsequent order reads.

FSM Mobile Stock Transfers

Records outgoing transfer quantities. Related fulfillments can identify incoming stock for Receive, according to the transfer-cost preference.

Record Constraints and Data Requirements

A fulfillment must retain its originating order and order-line relationships. In SuiteScript, native item fulfillment doesn't support standalone create or copy. FSM's supported paths transform an order. Fulfillment selection is constrained by the lines available from that transformation. See Item Fulfillment.

Quantities, locations, transaction units, and required inventory assignments must be consistent with the stock and the source transaction. The supplied FSM reference fields are optional in their field definitions. An account form or a particular feature can impose additional requirements. A hidden field, locally accepted value, or related transaction link doesn't confirm that the transaction passes NetSuite validation.

Record data and fulfillment status don't establish completion of separate asset creation, consumable processing, receiving, or invoicing. For prerequisites and completion criteria, see the relevant topic in Used by FSM Features.

Additional Information

Related Topics

General Notices