Skip to main content

Movement Rules

Deprecated. Movement rules are replaced by the Move Inventory workflow action, which expresses every rule concept (trigger, from-location, destination, transaction type, order) with the workflow's own event conditions, tag conditions, and action order. Existing rules keep running until the feature is removed in a later release. See Converting rules to Move Inventory below.

Movement Rules no longer has an entry in the navigation menu. Open it from Global Search (type "movement rules") or go straight to /movement-rules.

Movement rules automatically move inventory items between locations when scan events occur. They provide a simpler alternative to full workflows for straightforward location-based tracking: when a tag is scanned at a specific reader, move the item to a specific location.

Overview​

Movement rules evaluate incoming scan events against a set of conditions (which device, which location, which direction) and, when matched, move the associated inventory item to a configured destination. Rules are evaluated in sequence order, and the first matching rule is applied.

From the Movement Rules page you can:

  • Create rules that automatically move items based on scan events
  • Configure device, antenna, and motion-based triggers
  • Set flexible match criteria (any location, no location, specific location, or location type)
  • Use relative destinations (parent, sibling, or child locations)
  • Control rule evaluation order from a dedicated Arrange page
  • View the read point locations set on devices and groups

Permissions​

PermissionWhat It Allows
View Movement RulesSee the movement rules list and details
Manage Movement RulesCreate, edit, copy, enable/disable, and delete rules

The Movement Rules Grid​

Columns​

ColumnDescription
NameRule name
SequenceNumber controlling evaluation order (lower = first); managed from the Arrange page
TriggerDevice, group, or antenna filter displayed as a chip
RouteVisual flow showing "From" → "To" locations
TransactionTransaction type used for the inventory movement
DescriptionOptional notes about the rule's purpose (hidden by default)
On repeatWhat happens when a matched item is already at the resolved destination (hidden by default)
StatusEnabled or Disabled
Created / UpdatedAudit timestamps (hidden by default)
ScopeAccess scope (shown when multiple scopes are active)
ActionsDetails, Edit, Copy, Enable/Disable, Delete

Click the column icon on the grid header to show or hide columns; your choices are remembered between sessions.

Filter rules by name or description using the search bar.

Linked Locations​

An info banner at the top notes that the locations set on devices and device groups are read point locations: a Move Inventory workflow action can send items there, and the "within read point's location" filter tests against them. They are no longer fallback destinations when no movement rule matches; a tag no rule matches stays where it is. Click View Linked Locations to see which devices and groups have a location set.

Viewing a Rule​

Click any row (or choose Details from the row actions menu) to open the rule's own page at a stable, shareable URL. Its sections mirror the edit form: Basics (status, sequence, description), Trigger, Match criteria, Destination, and Transaction, plus an audit section with creation and modification timestamps. The page header's Actions menu holds Edit, Change Scope (admins only, see below), and the Enable/Disable toggle, next to a Back to Movement Rules button.

Creating a Movement Rule​

Click Create Rule to open the create page. If your organization has more than one site scope, the form leads with an Applies to section: choose whether the rule is Shared across your organization or scoped to one site. This choice bounds which devices, groups, and locations the rest of the form can reference. If you only have one site scope, this step is skipped and the rule is created shared automatically.

Use the section rail on the left to move between the form's sections:

Basics​

FieldDescriptionRequired
NameDisplay name for the ruleYes
DescriptionOptional notes about the rule's purposeNo

Note: Evaluation order (Sequence) is no longer set on this form. New and copied rules are appended to the end of the order; adjust their position on the Arrange page.

Trigger​

Define which devices and conditions activate this rule:

FieldDescription
DeviceSpecific device, or leave blank for any device
Device GroupSpecific group, or leave blank for any group
Antenna NumberSpecific antenna port (1–16), or leave blank for any
Motion FilterFilter by tag motion state: In Motion, Slight Movement, Stationary

When no device or group is specified, the rule evaluates for scan events from any device. On a site-scoped rule, "any device" means any device in that site: a site rule can only trigger from its own site's devices, matching the trigger-surface rule that also governs workflows.

Match Criteria​

Define which items the rule applies to based on their current location:

Match ModeBehavior
Any LocationMatches all items regardless of current location
No LocationOnly matches items not currently assigned to a location
Specific LocationMatches items at a particular location (optionally including child locations)
Location TypeMatches items at any location of a specific type

Transaction​

FieldDescriptionRequired
Transaction TypeThe type of transaction recorded for the movementYes

Destination​

Define where matched items are moved:

Target TypeBehavior
Specific LocationMove to a named location
Parent LocationMove to the item's current location's parent
Sibling by TypeMove to a sibling location matching a specific type
Sibling by NameMove to a sibling location matching a specific name
Child by TypeMove to a child location of the current location matching a type
Child by NameMove to a child location matching a specific name
Remove from InventoryClose the item out of live inventory (no destination location required). Works whether the item is currently at a location or not.

When Remove from Inventory is selected, no location configuration is needed. The item's lifecycle state becomes Closed regardless of whether it was previously at a location. If the item was at a location, it is removed from that location. If the item was New (never placed), it is closed out directly from the New state. Pair this with a close-out transaction type (such as Ship or Consume) on the Transaction section so both the physical event and the lifecycle change are recorded.

Note: A plain Remove from Inventory destination paired with a non-close-out transaction type still does nothing for an item that is not currently at a location. Only a close-out transaction type (one with the Removes from inventory toggle enabled) will close out a New item that has never been placed.

Alternatively, if you select a transaction type that already has the Removes from inventory toggle enabled, the destination type becomes irrelevant: the item is closed out automatically regardless of what destination is configured, and the destination field is replaced by an informational message.

Note: Whatever destination a rule resolves to, whether a fixed Specific Location pick or a computed one like Parent Location or Sibling by Type, must be a location where Inventory is set to Allowed. If a rule resolves to a location that doesn't allow inventory, the placement is rejected rather than moving the item there. See Locations for how that setting is configured.

For more detail on close-out behavior and lifecycle states, see Inventory Item Lifecycle.

When Already at Destination:

OptionBehavior
DoneStop processing; no movement needed
Continue to Next RuleSkip this rule and evaluate the next one in sequence

Rule Evaluation Order​

Rules are evaluated by sequence number, lowest first. When a scan event occurs:

  1. Rules are checked in sequence order
  2. The first matching rule is applied
  3. If no rules match, the tag stays where it is

Open the kebab menu (⋮) next to Create Rule and choose Arrange to open /movement-rules/arrange, drag rows to change their order, and see the current evaluation order at a glance. Reordering is admin-only, since evaluation order is shared across every site: non-admins can view the page but not drag rows, and admins can't reorder while a site scope filter is active in the app header (clear the filter first). Search also switches the page to view-only.

This means you can create specific rules with low sequence numbers to handle special cases, and broader catch-all rules with higher sequence numbers as defaults.

Actions​

ActionDescription
Enable/DisableToggle a rule on or off without deleting it
EditModify all rule properties
CopyDuplicate the rule with "(Copy)" suffix, created in disabled state, appended to the end of the evaluation order
Change ScopeAdmins only. Move the rule to a different scope; see below
DeletePermanently remove the rule and its execution history

Change Scope (Admins)​

From the detail page's Actions menu, administrators can move a rule to a different scope. Tagnet clears any device, group, or location references that fall outside the new scope, warning you which ones will be removed. If the rule's transaction type itself is out of scope for the target (and not a shared type), the transfer is blocked entirely until you change the transaction type first, since a rule can't run without one.

Converting rules to Move Inventory​

A rule set becomes one workflow per kind of read point, with one Move Inventory action per destination. Rules are global and workflows are per event condition, so the conversion is done by hand, rule by rule. Each rule field has a home in the workflow:

Movement rule fieldWhere it goes in the workflow
Device or device group triggerA Device or Device Group event condition. For a fleet of the same kind of reader across sites, one shared workflow with a Device Type event condition instead
Antenna triggerAn action tag condition on Tag.PrimaryAntenna
Motion indicator filterAn action tag condition on Tag.MotionIndicator
From location: any, none, specific, or by typeAction tag conditions on InventoryItem.CurrentLocation.*. For a doorway or site portal, the Within read point condition replaces the from-location entirely: inside means leaving, everything else arrives
To location: specificMove Inventory target Specific location
To location: the reader's own locationTarget Read point's location, with the location set on the device or group
To location: the same-coded location in each scopeTarget Location by code in the device's scope, one shared workflow for every scope
To location: sibling by typeTarget Sibling location by type
To location: parent, child, or sibling by nameNo direct equivalent. Under last-seen semantics the destination is where the reader is; model it as the read point's location or a location by code
Remove from inventoryTarget Remove from inventory with a close-out transaction type
Transaction typeThe action's transaction type
Sequence, first match winsAction order. An item a Move Inventory action already handled is skipped by every later one in the same execution
When already at destinationBuilt in: an item already at the target is left alone and counts as handled

A typical conversion:

  1. Set the Location on each reader (or its group) whose rules used it as the destination.
  2. Create one workflow per read-point kind, for example Yard portals or Workstations, shared or per site.
  3. Add one Move Inventory action per destination in the order the rules ran, copying each rule's from-location conditions into the action's filters.
  4. Run both side by side for a scan or two and compare the execution history, then disable the rules workflow.
  5. Delete the rules once nothing references them.

Best Practices​

  • Use sequence numbers strategically: Put specific rules first (low numbers) and general rules last (high numbers), and check the Arrange page after adding new rules since they append to the end.
  • Start with disabled rules: Copy rules in disabled state, then enable them after review.
  • Use relative destinations: Parent, sibling, and child destinations make rules reusable across similar location hierarchies without hardcoding specific locations.
  • Combine with motion filters: Use motion state filters to distinguish between items passing through a zone vs. items being placed in a zone.
  • Set the "already at destination" behavior: Use "Continue to Next Rule" to allow fallthrough to more general rules when an item is already where the current rule would move it.
  • Review read point locations: The locations on your devices and groups are where a Move Inventory action can send items and what the "within read point's location" filter tests. They are not fallback destinations when no rule matches.
  • Automate close-out at exit points: For shipping docks or consumption stations covered by fixed readers, configure a rule with a close-out transaction type (or the "Remove from Inventory" destination) so items are closed out automatically when scanned, without manual data entry.
  • Let the transaction type say what a move means: A workflow action that runs after Execute Movement Rules can filter on the transaction type the rule wrote (see Movement Result Fields), so an outbound integration subscribes to SHIP rather than restating the rule's from and to locations. Pick the type for its business meaning, and name the rule for it too: when several rules write the same type and only one should reach an integration, the rule name is the tiebreaker.