Purchase Item Mapping Group

Use the Purchase Item mapping group to map information on purchase item records in OpenAir with information on purchase order line items in NetSuite. The mapping group supports filters.

For reference information and best practice guidelines, review the following topics:

References

The following table gives reference information about the records and fields available for custom field mapping definition with links to the relevant reference material. See also Schema Reference Documentation.

NetSuite Record type [SOAP object]

OpenAir Record Type [table]

Mapping Group [Integration point]

Purchase Order Item [PurchaseOrderItem]

Schema: PurchaseOrderItem (2020.1)|PurchaseOrderItem (2023.1)

XSD: TransactionSearchRowBasicplatformCommon (2020.1)|platformCommon (2023.1)

Purchase Item [Purchase_item]

Data Dictionary: purchase_item

Purchase Item [PURCHASE_ITEM]

Default and Custom Filters

By default, purchase order item records are imported from NetSuite into OpenAir if the following conditions are met:

  • The purchase order is imported from NetSuite into OpenAir.

  • The purchase order must reference a vendor.

  • The purchase order line item must reference an item with a matching product record in OpenAir.

  • The Export to OpenAir [custcol_oa_export_to_openair] box is checked on the purchase order line item in NetSuite.

Custom filters are supported for this mapping group. For more information about adding filter conditions, see Using Filters and Filter Definition.

NetSuite fields declared and used in filters in the Purchase Item mapping group should also be declared in the PO filters.

Default Field Mappings

The following table describes the default field mapping definitions for the Purchase Item mapping group tab.

NetSuite Field

Direction

OpenAir Field

Notes

= Transaction.internalId + "-" + Transaction.line

Arrow pointing right

Purchase_item.netsuite_purchase_item_id__c

When you import a new purchase order line item from NetSuite into OpenAir, OpenAir stores the internal ID of the NetSuite purchase order and the line ID number of the purchase order line item in the NetSuite Purchase Item ID [netsuite_purchase_item_id] custom field. This custom field is used to link the OpenAir and NetSuite records for future updates and matching record associations.

Transaction.custcol_oa_po_line_tax

Arrow pointing right

Purchase_item.netsuite_purchase_item_tax__c

Tax information for each purchase order line item imports to the purchase item in OpenAir. The total tax on the OpenAir purchase order is calculated based on the tax for each purchase item.

Looked up OpenAir field valuename of OpenAir product with netsuite_product_id equal to the NetSuite field Transaction.item

Arrow pointing right

Purchase_item.name

Name of the product

Looked up OpenAir field valueid of OpenAir product with netsuite_product_id equal to the NetSuite field Transaction.item

Arrow pointing right

Purchase_item.product_id

Internal ID of the product

Looked up OpenAir field valueid of OpenAir project with netsuite_project_id equal to either:

  • NetSuite field Transaction.custbody_oa_purchase_project_id on the purchase order header

  • NetSuite field Transaction.entity on the purchase order line item

Arrow pointing right

Purchase_item.project_id

The project can be referenced either in the purchase order header or in each purchase order line item in NetSuite.

  • Purchase order header — The NetSuite Project ID [custbody_oa_purchase_project_id] custom field holds the internal ID of the project in NetSuite (copied from the shipTo field.

  • Purchase order line item — The Project field holds the internal ID of the project in NetSuite.

Looked up OpenAir field valueid of OpenAir customer associated with project with netsuite_project_id equal to the NetSuite field Transaction.custbody_oa_purchase_project_id

Arrow pointing right

Purchase_item.customer_id

Looked up OpenAir field valueid of OpenAir request item record created by the integration and associated with the OpenAir purchase item

Arrow pointing right

Purchase_item.request_item_id

Transaction.custcol_oa_po_rate

Arrow pointing right

Purchase_item.cost

The OpenAir Rate [custcol_oa_po_rate] custom field value is sourced from the Rate on the purchase order line item in NetSuite and imports to the Price and Approved Price fields on the purchase item record in OpenAir.

Transaction.custcol_oa_po_rate

Arrow pointing right

Purchase_item.approved_cost

The OpenAir Rate [custcol_oa_po_rate] custom field value is sourced from the Rate on the purchase order line item in NetSuite and imports to the Price and Approved Price fields on the purchase item record in OpenAir.

="each"

Arrow pointing right

Purchase_item.um

ABS(Transaction.quantity)

Arrow pointing right

Purchase_item.quantity

The Quantity must be positive in the OpenAir purchase item record.

Transaction.fxAmount || Transaction.amount

Arrow pointing right

Purchase_item.total

If the Quantity is negative on the purchase order line item, the Total is adjusted automatically so that quantity × cost and total are both negative or both positive. The foreign currency Amount [ fxAmount] or base currency Amount [ amount] value on the purchase order line item is used.

Looked up OpenAir field valueid of OpenAir purchase request record created by the integration and associated with the OpenAir purchase item

Arrow pointing right

Purchase_item.purchaserequest_id

Looked up OpenAir field value

  • If the purchaser integration is enabled, id of the OpenAir employee with user.netsuite_user_id equal to Transaction.createdBy, if the employee record is associated with a purchaser record with NetSuite Purchase Order Integration purchaser [netsuite_purchaser] box checked.

  • Otherwise, user_id of the OpenAir purchaser record with NetSuite Purchase Order Integration purchaser [netsuite_purchaser] box checked.

Arrow pointing right

Purchase_item.user_id

Internal ID of the employee associated with the purchaser in OpenAir.

  • If the Enable purchaser integration box is checked on the Employees (Employees) import workflow settings form, the employee who created the purchase order in NetSuite is set as the Purchaser and Requester on the purchase item in OpenAir. Matching records for this employee must exist in OpenAir and NetSuite, and the employee must be associated with a purchaser record marked as a NetSuite purchaser in OpenAir. See Enable purchaser integration.

  • Otherwise, a purchaser designated as the universal NetSuite purchaser is used.

Transaction.currency

Arrow pointing right

Purchase_item.currency

Active and visible only if the Multicurrency feature is enabled for your OpenAir account

.

Multiple currency — The Currency on the purchase item record in OpenAir is set to the Currency on the purchase order line item in NetSuite.

Looked up OpenAir field valueid of OpenAir purchase order record created to match the purchase order

Arrow pointing right

Purchase_item.purchaseorder_id

Looked up OpenAir field valueid of OpenAir vendor record with netsuite_vendor_id equal to the NetSuite field Transaction.entity on the purchase order header

Arrow pointing right

Purchase_item.vendor_id

Looked up OpenAir field valueid of OpenAir purchaser

Arrow pointing right

Purchase_item.purchaser_id

Internal ID of the purchaser specified for the purchase order integration in OpenAir.

Transaction.tranDate

Arrow pointing right

Purchase_item.date

Additional Field Mappings

Important:

Review the following guidelines

  • You should contact your OpenAir Professional Services representative if you need to make changes to your integration configuration and field mapping definitions.

  • For advanced mapping usage and best practice guidelines, see Advanced Field Mapping Definition.

  • Familiarize yourself with the NetSuite and OpenAir technical documentation before attempting to set field mapping definitions using the advanced notation — See Schema Reference Documentation.

Review the following guidelines:

  • NetSuite fields declared and used in advanced mappings in the Purchase Item mapping group should also be declared in the PO mapping group.