Customer Pricing
Give customers their agreed prices and control which products they can see.
What it does
The customer pricing importer sets prices, short descriptions and product visibility for individual customers.
What customers see
When the signed-in customer has a matching row:
PRICEreplaces the product's standard price everywhere: listings, search, product pages, the cart, and order totals.SHORT_DESCRIPTIONreplaces the product's short description on listings.HIDDENremoves the product from that customer's search and browse results entirely.
If the product also has a SPECIAL_PRICE lower than the customer's PRICE, the customer normally sees the special price as an offer. Your store can instead be set so the customer's PRICE always wins: they pay their agreed price and see no offer, even when SPECIAL_PRICE or the standard price is lower. Customers without a row for that product still see the offer. Contact your onboarding manager to switch this on.
When to use it
Use it for contract prices or customer-specific product ranges. The file must cover every customer and product with an agreed override.
Before you upload
Never upload only one customer’s price list. Always include all customer pricing for the store; missing rows lose their overrides, and an empty file removes every customer-specific price.
Each row adds or updates the price for that customer and product. The file replaces every field, so a blank SHORT_DESCRIPTION or HIDDEN cell clears the stored value - omitting the column does not preserve it.
Active price entries missing from the file are deactivated. They are reactivated, with the values from the file, when the same customer and SKU pair reappears in a later import.
Read the shared CSV format and money rules before preparing your file.
Steps
- Open eCommerce → Importers.
- In Upload CSV, choose Import for Customer Pricing then use Pick CSV file to select your complete file.
- Review the replacement warning, then select Upload and replace.
What you'll see
The file appears in Import log as Pending, then Success or Failed. Prices change on your storefront within about 15 minutes of uploading - see when changes appear.
If the file fails, ProConnect emails your store's email address with the reason and the rows to correct, and emails you again when a later Customer pricing file succeeds. A run of failures is only emailed the first time. See Email notifications.
If something goes wrong
- Failed import: select View report, correct the reported rows and upload the complete file again. A validation error prevents the whole file from being applied.
- Unexpected results: If a price does not appear, check the customer account code and SKU match the customer and product codes. Confirm the customer-specific pricing feature is enabled for your store.
- Missing rows after a successful upload: restore them in the complete file and upload again. Check the replacement rules above before sending another file.
Columns
Limits count characters after surrounding spaces are removed. A value over its limit fails that row, and the file is not applied. See the shared value limits.
Customer and product
| Column | Required | Limit | Example | Notes |
|---|---|---|---|---|
CUSTOMER_ID | Yes | 1-36 characters: letters, numbers, hyphens, underscores and ampersands | ACME001 | Customer's CUSTOMER_ID. |
SKU | Yes | 1-255 characters | SKU-001 | Product's SKU. |
Price and visibility
| Column | Required | Limit | Example | Notes |
|---|---|---|---|---|
PRICE | Yes | 0 to 9,999,999.99, 2 decimal places, plain number | 12.50 | Customer-specific price. Use the plain-number format in money values: no currency symbols or thousands separators. |
SHORT_DESCRIPTION | No | No fixed limit | Case of 24 | Replaces the product's short description for this customer. A blank cell clears any existing override. |
HIDDEN | No | Yes/no value | no | Yes hides the product from this customer. No, or blank, keeps it visible. Defaults to no. |
Yes/no cells accept 1, true, or yes, and 0, false, or no. Any other value fails validation.
If the same CUSTOMER_ID and SKU pair appears more than once, the last row wins. See the shared identifier matching rules.
Requirements
- Customer-specific pricing, descriptions, and visibility are store features that must be enabled for your store. Contact your onboarding manager if you are unsure which are active.
CUSTOMER_IDmust match theCUSTOMER_IDin the customer CSV, andSKUmust match a product SKU from the product CSV. Rows without a matching customer or product import successfully but have no effect until the match exists.
Example CSV
CUSTOMER_ID,SKU,PRICE,SHORT_DESCRIPTION,HIDDEN
ACME001,SKU-001,3.49,Contract price - case of 24,0
ACME001,SKU-003,17.99,,1
ACME002,SKU-001,3.75,,0Download the sample customer pricing CSV to use as a template.