Flxpoint Help Center
All DocsContact support

Essendant as a Source

July 17, 2026

Summary

Essendant is a wholesale distributor of office supplies, janitorial products, industrial goods, and business essentials. The integration connects via FTP using your Essendant FTP Host, Username and Password, and runs Get Inventory (Primary and Secondary), Send Fulfillment Requests, Get Shipments, Get Fulfillment Acknowledgements and Get Invoices. A Ship To Account Number is required on every fulfillment request — from the mapping template or the integration settings — or the Send FR job will fail.

Get Inventory (Primary)
Imports the full Essendant catalog daily — products, pricing, and quantity.
Get Inventory (Secondary)
A lighter, frequent refresh of pricing and quantity only.
Send Fulfillment Requests
Sends orders (Fulfillment Requests) to Essendant.
Get Shipments
Pulls Essendant tracking numbers and ship dates back into Flxpoint.
Get Fulfillment Acknowledgements
Confirms which order lines Essendant will fill.
Get Invoices
Imports Essendant invoices for reconciliation.

Essendant connects over FTP. Add the source, start configuring an operation, and when Flxpoint prompts you click + New Connection, enter the Host, Username and Password provided by Essendant, then Test ConnectionSave Connection.

HostRequired
Your Essendant FTP server hostname, provided by Essendant.
UsernameRequired
Your Essendant FTP username, provided by Essendant.
PasswordRequired
Your Essendant FTP password.
Beyond the connection credentials, this integration may require a few additional account settings (such as your Essendant account / ship-to reference and duplicate-order handling). Confirm the required values with your Essendant representative and support@flxpoint.com before going live.

Ship To Account is required for Send FR — missing it causes the job to fail

Essendant requires a Ship To Account number on every fulfillment request. It can come from either: (1) the Send Fulfillment Requests mapping template, or (2) the Essendant integration settings. The template value takes precedence if both are set. If neither provides a Ship To Account, the Send FR job will fail. Many Essendant dealers have multiple Ship To accounts — confirm the correct account number(s) with Essendant before going live, especially for multi-location setups.

Get Shipments only returns orders that are fully shipped — partial shipments not supported

Essendant's Get Shipments integration only populates a shipment record for an order when it is fully shipped. Partial shipments are not supported — an order will not appear in Get Shipments until all line items have shipped. If you are tracking a time-sensitive order and no shipment data appears, confirm with Essendant whether the order is partially or fully shipped.

GIP fails when the FTP folder path or filename is wrong

If Get Inventory (Primary) fails to locate the Essendant inventory file, the FTP folder path or filename is usually entered incorrectly in the integration settings. The inventory folder is typically /icaps/ with a file named eob_individual_items.zip. Confirm the exact path and filename with Essendant, and make sure the folder and filename fields are not swapped in the settings.

UNSPSC codes map to variant custom fields; up to three product category levels available

Essendant's GIP feed supports custom fields — UNSPSC codes (UN Standard Products and Services Codes) can be mapped to Essendant variant custom fields in the mapping template. Product categorization supports up to three levels (Category1, Category2, Category3) which can be mapped to Flxpoint's Category 1-3 fields. Multiple images may be available for some SKUs; image availability varies by product category.


FieldMaps To — Notes
skuProduct / Variant → SKU. Required. Built from Essendant's Prefix Number + Stock Number as the primary identifier.
mpnIdentifiers → Manufacturer Part Number. Manufacturer's SKU/part number for the item.
upcIdentifiers → UPC. Retail UPC, falling back to carton UPC when retail is blank.
unspscVariant Custom Field → UNSPSC Code. UN Standard Products and Services Code — map it to a custom field in the mapping template.
category1 / category2 / category3Category 1 / 2 / 3. Essendant's e-commerce hierarchy supports up to three levels; products missing Category 1 or 2 are skipped from the import.
title / shortDescription / descriptionTitle / Short Description / Description. Title is truncated to 150 characters from the long item description; non-returnable items get a note appended automatically.
msrp / costPricing → MSRP / Cost. Cost defaults to 80% of MSRP here; the hourly inventory feed (see Get Inventory Secondary) overrides Cost with your actual dealer cost per SKU.
mapPricing → MAP. Minimum advertised price, when Essendant provides one.
quantityInventory → Quantity. Populated from Essendant's hourly inventory feed matched by SKU. Essendant does not provide multi-warehouse data — quantities are per-SKU totals only.
width / height / length / weightDimensions & Weight. Includes weight/inventory/list unit-of-measure codes where Essendant returns them.
manufacturerManufacturer / Brand. Resolved from Essendant's vendor master file by brand ID; products with no resolvable manufacturer are skipped.
imagesProduct / Variant → Images. Multiple images may be available per SKU (main image plus alternates); availability varies by product category.
Spec attributesProduct Attributes. Spec name/value pairs (plus Ship Class Code when present) copied in as product attributes.
FieldMaps To — Notes
skuInventory Variant → SKU. Required. Matches the SKU from Get Inventory Primary.
costPricing → Cost. Your actual dealer cost from Essendant's hourly inventory feed.
quantityInventory → Quantity. Current available units from the hourly feed.
Source FieldMaps To (Essendant) — Notes
Fulfillment Request → PO NumberDealer Purchase Order Number. Required. Cannot be empty or the order fails validation.
Ship To Account (template or integration settings)Ship To Account Number. Required. The mapping template value takes precedence over the integration-settings fallback; if neither is set, Send FR fails.
Fulfillment Request Item → SKUEssendant Inc. Item Number. Required. Falls back to the line's Flxpoint SKU if no Essendant item number is mapped.
Fulfillment Request Item → TitleLine Text. Line item description sent to Essendant.
Fulfillment Request Item → QuantityQuantity Ordered. Required. Units requested.
Fulfillment Request Item → CostDealer Price. Cost sent per line item; List Price and Unit of Measure can also be mapped.
Shipping addressShip To Name / Address Line 1 & 2 / City / State / Zip. Required (except Address Line 2). Name and Address Line 1 are limited to 35 characters, City to 30, State to 2, Zip to 15 — values over these limits fail validation.
Source Shipping MethodShip Method / carrier preference. Carrier code (e.g. USPS, UPS, FedEx) sent with the order.
FieldMaps To — Notes
dealerPurchaseOrderNumberShipment → Purchase Order match. Required. Matches the shipment to the Flxpoint PO/Fulfillment Request; shipments with no PO number are skipped.
carrierTrackingNumberShipment → Tracking Number. Required. Shipments without a tracking number are not returned.
carrierNameShipment → Carrier. Carrier name reported by Essendant.
shipDateShipment → Shipped At. When Essendant marks the shipment shipped.
Item → Quantity ShippedShipment Item → Quantity. Required. Units shipped for the line.
FieldMaps To — Notes
purchaseOrderNumberAcknowledgement → Purchase Order match. Matches the acknowledgement to the Flxpoint PO/Fulfillment Request.
dateTimeCreatedAcknowledged At. Timestamp Essendant generated the acknowledgement.
Item → originalOrderedQuantityAcknowledgement Item → Quantity. Originally ordered quantity referenced on the acknowledgement line.
FieldMaps To — Notes
poInvoice → Purchase Order match. Required. Invoices are matched to the Flxpoint PO by this field; unmatched invoices are not returned.
invoiceNoInvoice → Invoice Number. Essendant's invoice number.
invoiceDateInvoice → Invoice Date.
Item → Essendant Item NumberInvoice Item → SKU. Matched to the Essendant item number.
Item → unitPriceInvoice Item → Unit Price. Per-unit cost billed.
Item → quantityInvoice Item → Quantity. Units invoiced.
Item → itemDescriptionInvoice Item → Description. Line item description from Essendant.

GIP failing — inventory file not found
Flxpoint can't find the inventory file on Essendant's FTP. Check: (1) the Remote FTP Folder is set to /icaps/ (not blank, not a different path); (2) the File Name field is set to eob_individual_items.zip (or the exact filename Essendant uses for your account); (3) the folder and filename fields are not swapped — a common setup mistake. If the path is correct and the error persists, confirm with Essendant that the file exists on their FTP at that exact path.
Send FR failing — Ship To Account missing
Send FR fails silently or with a validation error when no Ship To Account is available. Check two places: (1) the Send Fulfillment Requests mapping template — confirm a Ship To Account field is mapped to a valid value; (2) the Essendant integration settings — there may be a fallback Ship To Account configured here. If your business has multiple ship-to locations, map the Ship To Account dynamically in the template rather than relying on the settings fallback. Contact Essendant to confirm all valid Ship To Account numbers for your dealer account before going live.
Some product categories or SKUs missing from GIP import
If certain SKUs or entire categories are absent after GIP runs, check whether Essendant has split your product data across multiple ZIP files. Some accounts receive separate feeds per product category. Confirm with Essendant whether additional feed files exist for your account (e.g., files in other subdirectories or with different naming conventions). You may need to configure additional GIP integrations pointing to each feed file, or contact Essendant to request a consolidated feed.

What does GIP download from Essendant FTP and where does it look?
GIP downloads product files from the /icaps/ folder on Essendant's FTP. The primary file is eob_individual_items.zip. If your account has products split across multiple ZIP files, you may need to configure additional feed files or contact Essendant to request consolidated data. Essendant does not provide multi-warehouse data — quantities are per-SKU totals only.
What does Send Fulfillment Requests do and what data is included?
Send FR generates an XML purchase order file and uploads it to Essendant's FTP server. The file includes: Order ID/date/customer reference (header), shipping details (name, address, city, state, postal code, phone), line items (SKU, quantity, unit price, applicable discounts), and shipping method (carrier preference codes, e.g., USPS, UPS, FedEx). Essendant confirms receipt automatically once the file is uploaded. Invalid SKUs, missing shipping info, or a missing Ship To Account will result in order rejection — validate these before enabling automatic order sending.
How does Get Fulfillment Acknowledgements work?
Get Acknowledgements retrieves XML acknowledgement files from a designated Essendant FTP directory after Send FR. Each file may contain multiple order acknowledgements. Fields returned: Fulfillment Request Number (for matching), Acknowledgement Status (fully accepted, partially accepted, or rejected), and Error Codes/Descriptions if any issues occurred. Partially accepted acknowledgements require manual or automated follow-up. Your system should log these and trigger alerts for rejected orders.
What does Get Invoices retrieve from Essendant?
Get Invoices downloads XML invoice files from a designated Essendant FTP folder. Each file may cover multiple orders. Invoice content includes: line item costs per SKU (including taxes, discounts, additional fees), Fulfillment Request Numbers or Order IDs for matching, and summary totals (overall costs, taxes, shipping charges). Accurate field mapping is critical for financial record alignment — discrepancies should be flagged for review to reconcile differences in order totals.
© 2026 Flxpoint. All rights reserved.