Idempotency

The Idempotency feature of the Field Service Management (FSM) mobile app helps prevent duplicate records from being created during unreliable network conditions or repeated sync attempts. With the idempotency feature, the FSM mobile app makes sure resubmitted requests such as those from interrupted syncs or retries are processed a single time, so your data stays accurate. When mobile users submit records in areas with unstable connections, the same request might get sent several times, like after reconnecting or resyncing. Normally, each retry could create duplicate records for the same action. By setting up idempotency, you make sure only one record is created or updated per unique action, no matter how many times NetSuite gets the request from the mobile app.

By default, idempotency is running on all standard mobile tabs below.

Important:

FSM version 2025.10.1 is currently available for early access testing in sandbox accounts.

If you’ve set up idempotency on any standard tab in your config, you can remove it when you update to version 2025.10.1 because it’s no longer needed and will be replaced by the base product behavior.

Default Tab Label

Config Section

Details

details

Asset

asset

Sales Order

salesorder

Inventory

consumables

Time

times

Expenses

expenses

Files

files

Notes

notes

Task

actions

Quote

quote

Order

order

Return

return

Any mobile tabs that aren't standard tabs need idempotency to be set up on the tab. While some custom records in your account might already have an idempotency key, it’s important to ensure all custom tabs or records used by the mobile app have idempotency set up to lower the risk of duplicates.

The following custom tabs in mobile have idempotency fields, but idempotency still needs to be defined in configuration.

Custom Tab in Config

Idempotency

jobsafety

custrecord_nx_jobsafety_idem_key

newdetails

custevent_nx_idempotency_key

casessignatures

custevent_nx_idempotency_key

createchildasset

custrecord_nx_asset_idempotency_key

install

custrecord_nx_install_idem_key

repair

custrecord_nx_repair_idem_key

uninstall

custrecord_nx_uninstall_idem_key

maintenance

custrecord_nx_maintenance_idem_key

If you've created custom tabs or records in the FSM mobile app, you’ll need to add an idempotency field for those records and set it as a property in the configuration.

To add an idempotency key field to a custom record:

  1. Go to Customization > Lists, Records, & Fields > Record Types.

  2. Click on the name of the custom record type you want to modify.

  3. On the custom record type page, click the Fields subtab.

  4. Click New Field to create a new custom field.

  5. On the custom record field page, fill up the following fields:

    • Label: Enter a descriptive name, such as "[record name] Idempotency Key".

    • ID: If you leave this blank, NetSuite will create the ID automatically.

      To keep things consistent, enter an ID with _idem as the suffix. The ID shouldn't contain spaces.

      For example, if you have a checklist abc, enter an ID such as custrecord_nx_abc_idem.

    • Type: Select Free-Form Text.

    • Store Value: Ensure this box is checked to save your entered data.

  6. Click Save.

To define idempotency for custom records in configuration:

  1. Go to Field Service > Administration > Configuration.

    The Field Service Configuration page opens the active configuration file.

  2. On the JSON field, define idempotency for each custom record.

    Using our sample idempotency created for the checklist abc custom record:

                    "tab": {
    ...
    "article": {
    "idempotencyField": "custrecord_nx_abc_idem"
    ...
    }
    } 
    
                  
  3. Repeat step 2 on every tab that creates, updates, or deletes custom records.

  4. Click Save.

Related Topics

General Notices