How to handle customer SKUs that don’t match your item codes

Why customer part numbers don't match your item codes, how to build a SKU cross-reference, and how to automate SKU translation on emailed POs.

Your customer orders “XB-1375-BLK”. Your NetSuite item is “BAR1375B”. Same product, two codes. Every business that sells to resellers, retailers or distributors deals with this, and it’s one of the main reasons purchase order entry stays manual. Here’s why it happens, the common ways to handle it, and how to automate it.

Why customer SKUs don’t match your item codes

  • Customers use their own part numbers. Their purchasing system generates POs from their own item master, not yours.
  • Formatting differs. Dashes, spaces, prefixes and leading zeros: “00123-A” against “123A”.
  • Old or superseded codes. Customers keep ordering a product you’ve since replaced with a new item.
  • Units and pack sizes. They order “1 box”, and you sell in eaches. Or the reverse.
  • Descriptions instead of codes. Some POs list only a product description.
  • Branch and store codes. Large customers identify delivery locations by their own branch codes, not your ship-to addresses.

Common ways to handle it

Ask customers to use your codes

It’s worth asking, but large customers’ systems rarely allow it, and you can’t make it a condition of doing business with every reseller.

Keep a cross-reference spreadsheet

Most teams start here: a shared sheet of customer code against your item code. It works until it’s out of date, until two people keep different versions, or until the person who knows it is on leave. And every lookup still happens by hand.

Store the cross-reference in NetSuite

A better option is to hold the mapping in NetSuite itself, typically as a custom record linking customer, customer part number and your item. It becomes one source of truth that reports and scripts can use. But order entry staff still have to look codes up while keying each line.

EDI cross-reference tables

EDI tools translate trading partner codes automatically, but only for orders that arrive by EDI, which leaves out every customer who emails. More in APEX as an EDI alternative.

Best practices for SKU mapping

  • Map per customer. The same code can mean different products at two customers.
  • Normalise before matching. Ignore case, spaces, dashes and leading zeros, so small formatting differences don’t break a match.
  • Record unit conversions with the mapping, such as “1 box = 12 each”, so quantities come out right.
  • Handle superseded items with substitution rules that point old codes at their replacements.
  • Map branch codes to ship-to addresses, so each order goes to the right store.
  • Never guess. An unmatched code should stop the order for review, not fall back to the nearest-looking item.
  • Capture new mappings as you go, so the same code never needs looking up twice.

Automating it with APEX

APEX Document Processor builds these practices into purchase order processing for NetSuite:

  • AI extracts every line from the customer’s PO, including their SKU, description and quantity.
  • Customer SKUs and branch codes are translated to your NetSuite items and addresses using saved customer mappings.
  • Item substitution rules handle superseded and replacement products.
  • Lines with no confident match are flagged for review instead of guessed.
  • Customer mappings and item substitutions are learned over time, so fewer orders need a manual touch each week.

The result is a sales order in NetSuite with your own item codes, created in one click after review. See it running in the 85-second demo, or read the wider guide on how to automate sales order entry in NetSuite.

Frequently asked questions

What is a customer item cross-reference?

It’s a mapping between the part numbers a customer uses on their purchase orders and your own item codes, kept per customer. It lets you translate their orders into your items accurately.

How do I handle a customer SKU that doesn’t match anything?

Stop and review it rather than guess. Confirm the right item with the customer or your product team, then save the mapping so it matches automatically next time. APEX flags unmatched lines this way.

Can SKU translation be automated for emailed purchase orders?

Yes. APEX reads emailed PDF, CSV and XLSX purchase orders, translates customer SKUs and branch codes to your NetSuite items using saved mappings and substitution rules, and flags anything it can’t match confidently.