|This article applies if you are currently in the process of setting up for our NetSuite Purchase Order sync integration. This is part of the implementation process for your sandbox.|
You've completed the steps to install and configure the Procurify SuiteApps bundle into your NetSuite sandbox and may have started to sync Terms, Vendors, GL Account Codes, and Inventory Items to your connected Procurify sandbox. At this point, you're close to syncing Purchase Orders and Item Receipts from Procurify to NetSuite. If you've tried to do so, you've probably noticed they've either failed to sync or have synced with very little information to be seen inside NetSuite.
This is completely normal. As NetSuite is an extremely customizable environment, most customers require varying degrees of information to be transferred from Procurify to NetSuite and thus send little information by default. Sync might have failed due to some fields being marked as Mandatory on your NetSuite PO form, which we haven't tried filling in... yet!
The Mapping call your Procurify Implementation Manager has invited you to is intended to define what information needs to flow from Procurify to NetSuite and see exactly where this information needs to go.
To prepare for this Mapping call, here's a bullet-point list of what you need to do to be prepared. We'll provide further details and screenshots below. You can also refer to the Integration User Manual you received for detailed information.
- Have an understanding of Header-level information and Line-level information for your Purchase Order forms.
- Have defined your NetSuite Purchase Order form.
- Have worked with your Procurify Implementation Manager to create any Procurify Custom Fields you may require.
- Have installed and configured the Procurify SuiteApp bundle in your NetSuite instance.
- Synced at least one GL Account Code and one Vendor from NetSuite to Procurify.
- Created a test Purchase Order in Procurify with this Account Code/Vendor.
- Looked at the Procurify PO you've created, and your NetSuite Purchase Order forms side-by-side and started defining what should go where.
Header vs. Line level information
Purchase Order forms will typically contain information split into Header-level and Line-level fields. The header is information that will be only present ONCE for the entire PO, and Line can vary for each item (or service) requested. See this screenshot from a NetSuite PO form where Header-level fields are highlighted in green and Line-level fields are highlighted in orange.
One important thing to consider is that Procurify allows your Purchasers to combine multiple requisitions into a single vendor PO for efficient purchasing. This means that the Location or Department in Procurify will reside at the line level on the PO along with any other RFO Custom Field. This doesn't mean we can't populate the Header if that's what is required; the Header is typically populated with the information from the first item in the PO since it can only exist once.
Procurify Custom Fields
We have two sections of Custom Fields in Procurify. The first is the Custom RFO fields in your Procurify domain under Settings -> Customize Request For Order Form. This is where you can set up fields that can be populated at the request stage or be pre-assigned to Catalog items. A sample screenshot can be seen below. Note how field types can be set to Checkbox, Text, Dropdown Choices, or Date fields and can be made mandatory.
And these would be seen when adding an item to your request.
And seen under the PO's line items.
The second type is the Custom Purchase Order field under Settings -> Customize Purchase Order Form. These are, however, more limited as they can only be text fields and cannot be made mandatory. They are to be populated by the Purchaser when creating the PO.
Defining the mapping
The mapping files that need to be created for your NetSuite instance will define what field in Procurify will populate what field in NetSuite when syncing the PO. To smooth out this exercise, we recommend you look at your Procurify PO and NetSuite PO side by side and start drawing lines between both.
Green lines represent some fields that are mapped by default; red lines are fields that would be added by the mapping file. We are quite flexible here where there might be information you only need inside Procurify and need ignoring or information in NetSuite that you want to populate with a certain value that wouldn't be visible to your staff in Procurify - this is entirely possible.
Ensure any information that you wish to sync between Procurify and NetSuite has corresponding fields created in your NetSuite instance and that they are assigned unique Field IDs. On the mapping call, we'll validate what you've decided at this step and capture the correct Field IDs for the programming to be done.
What is mapped by default?
Refer to this handy table below. Everything else comes from the mapping file. We're using some typical field names here for NetSuite - they may be relabeled to something else.