Skip to content
WIKI / DOCUMENTATIONNeed a hand? Contact support
Browse all 47 articles

GUIDES & REFERENCE

Item Mappings

Map Google Calendar text to inventory items for contracts and counts.

Updated

Item Mappings connect common note text to your inventory items. The system uses them to keep contracts, parsing, and automated item counts consistent when imported details mention gear in plain language.


What Are Item Mappings?

An item mapping is a rule that says: "When you see this text, it means this inventory item in this quantity."

For example:

  • Source Text: "8ft Banquet" → Target Item: Tables > 8ft, Default Quantity: 1
  • Source Text: "White Padded Chairs" → Target Item: Chairs > White Padded, Default Quantity: 1
  • Source Text: "40x80" → Target Item: Tents > 40x80, Default Quantity: 1

When the system encounters "8ft Banquet" in an event description, it knows to deduct from your "Tables > 8ft" inventory.


Where Mappings Are Used

Mappings are used in several places:

  1. Contracts and templates — item mappings help the contract system match event items to the right template triggers.
  2. Parsing imported text — plain notes such as Google Calendar text are translated into inventory items and quantities.
  3. Automated item counts — imported details can be turned into consistent item counts for downstream tracking.

Managing Mappings

Navigate to Settings → Mappings to view and manage your item mappings.

Creating a Mapping

  1. Click Add Mapping.
  2. Enter the Google Calendar Text — the phrase to match (case-insensitive). This should be exactly how the item might appear in notes or imported details.
  3. Select the Maps To Inventory Item — the inventory item this text refers to.
  4. Set the Default Quantity — how many of the target item one match represents (default: 1).
  5. Choose whether the mapping is Enabled — inactive mappings are ignored during parsing.
  6. Click Save.

Editing a Mapping

Click the edit icon to change a mapping's source text, target item, default quantity, or active status.

Bulk Enable/Disable

Select multiple mappings and use the bulk update feature to enable or disable them all at once. This is useful for seasonal adjustments or when testing new mapping configurations.

Deleting a Mapping

Click the delete icon to permanently remove a mapping. This doesn't affect any existing events — it only changes how future text parsing works.


Apply Updates

After you edit mappings, click Apply Updates to rerun the reconciliation pass. That refreshes the current calendar data and keeps item counts in sync with the latest matches.


Gotchas

  • Case-insensitive matching: Mappings are case-insensitive. "40x80", "40X80", and "40x80 tent" will all match a mapping with source text "40x80".
  • Word boundary matching: The system uses word boundary matching, so "40x80" won't accidentally match inside "140x80" or "40x800". However, this means your source text needs to be a complete word or phrase.
  • Multiple matches: If an event description mentions "40x80" three times, the mapping is applied three times (quantity x3). This is usually correct for descriptions like "2 x 40x80 tent" but could lead to over-counting if the same term appears in different contexts in the description.
  • Active vs. inactive: Only active mappings are used for parsing. Seed mappings start as inactive — don't forget to activate the ones you need.
  • Composite expansion: If a mapping targets a composite item (Build Kit), the system expands it to the component level for availability tracking. Make sure your Build Kit definitions are correct.
  • Mapping conflicts: If you have overlapping mappings (e.g., "table" and "8ft table"), both may match the same text. The system applies all matches, which could double-count items. Use specific source text to avoid overlap, or use the debug tool to check for conflicts.
  • Mappings don't affect quotes directly: Mappings are primarily for parsing free text (like Google Calendar descriptions). Quote items are matched to inventory by their quote item ID, not by text parsing. Mappings come into play when a quote is booked into an event.
Still need help?Talk to the Apex team ↗