# What a catalogue needs before an AI quoting pilot

A quoting pilot is only as good as the catalogue behind it. Use this checklist to find missing fields, inconsistent price records and items that need a human decision before any system touches them.

Updated 13 October 2026 . 8 min read . Alexey Shurov

## The short answer

Before a quoting pilot can run reliably, every product in scope needs a confirmed item code, a current price, a selling unit and a clear rule for what happens when a request does not match the catalogue exactly. Without those four things, the system will either produce a wrong quote or stop on every second line.

This checklist works through the fields a quoting system reads, the validation steps that catch bad data before the pilot starts, and the cases that stay with a person regardless of how good the catalogue is. Work through it with whoever owns the price list and whoever owns the product master. An afternoon is usually enough to find the gaps.

### 1. Agree the scope before you open the catalogue

Decide which product families are in the pilot. A pilot that covers everything at once usually fails because the catalogue problems are different across families. Pick the family with the most repeat quote requests and the fewest bespoke lines.

I ask for a week of real quote requests from that family before the checklist starts. They show which fields the system will actually read and which edge cases appear most often.

### 2. Check the required fields for every item in scope

Each item needs six fields to support a reliable quote. Item code, item description, selling unit, list price, price effective date and whether the item is currently available. A field that is sometimes blank is a gap. A field that holds free text where a code is expected is also a gap.

Export the product master for the pilot family and count the blank or inconsistent cells. A sheet with more than one blank per ten rows will cause the pilot to produce uncertain output on a significant share of lines.

### 3. Validate the price list separately from the product master

Many manufacturers hold a product master in one place and a price list in another. Check that every item code in the price list exists in the product master and that every item in scope has exactly one active price. Duplicate price rows for the same item and the same customer tier are a common problem. The system cannot choose between them without a rule.

Check the effective dates. A price with no end date is ambiguous when a new price is added. Decide whether the most recent date wins or whether an explicit end date is required, and apply that rule before the pilot.

### 4. Write the stop rules before the pilot starts

A stop rule tells the system when to send a quote line to a person instead of completing it automatically. Write them down as plain conditions. Examples are a requested quantity below the minimum order quantity, a product revision that has not been approved for the customer, or a discount level above a named threshold.

Stop rules that are not written down become invisible. The system will either guess or fail silently. I ask teams to list every reason a quote has been sent back to a sales person in the last month. Each reason is a candidate stop rule.

## The required fields checklist

One row per item in scope. Fill the status column for each field. Keep it where the product owner and the pricing owner can both reach it.

| Item code | Item description | Selling unit | List price | Price effective date | Available (yes or no) |
|---|---|---|---|---|---|
|  |  |  |  |  |  |
|  |  |  |  |  |  |
|  |  |  |  |  |  |
|  |  |  |  |  |  |

[Download this sheet as a file for Excel](data:text/csv;charset=utf-8,%EF%BB%BFItem%20code%2CItem%20description%2CSelling%20unit%2CList%20price%2CPrice%20effective%20date%2CAvailable%20%28yes%20or%20no%29%0D%0A%2C%2C%2C%2C%2C%0D%0A%2C%2C%2C%2C%2C%0D%0A%2C%2C%2C%2C%2C%0D%0A%2C%2C%2C%2C%2C%0D%0A)

## A worked example of the required fields checklist

**Made up example.** Every row here is made up to show the method. Hartwell Components does not exist.

| Item code | Item description | Selling unit | List price | Price effective date | Available (yes or no) |
|---|---|---|---|---|---|
| HC-0041 | Stainless bracket 40mm | Each | 4.20 | 2026-09-01 | Yes |
| HC-0042 | Stainless bracket 60mm | Each |  |  | Yes |
| HC-0043 | Mild steel plate 3mm | Sheet | 18.50 | 2026-09-01 | No |
| HC-0044 | Fixing kit type A | Kit | 11.00 | 2026-07-15 | Yes |
| HC-0045 | Fixing kit type B |  | 11.00 | 2026-07-15 | Yes |
| HC-0046 | Aluminium angle 25mm | Metre | 6.75 | 2026-09-01 | Yes |

[Download this sheet as a file for Excel](data:text/csv;charset=utf-8,%EF%BB%BFItem%20code%2CItem%20description%2CSelling%20unit%2CList%20price%2CPrice%20effective%20date%2CAvailable%20%28yes%20or%20no%29%0D%0AHC-0041%2CStainless%20bracket%2040mm%2CEach%2C4.20%2C2026-09-01%2CYes%0D%0AHC-0042%2CStainless%20bracket%2060mm%2CEach%2C%2C%2CYes%0D%0AHC-0043%2CMild%20steel%20plate%203mm%2CSheet%2C18.50%2C2026-09-01%2CNo%0D%0AHC-0044%2CFixing%20kit%20type%20A%2CKit%2C11.00%2C2026-07-15%2CYes%0D%0AHC-0045%2CFixing%20kit%20type%20B%2C%2C11.00%2C2026-07-15%2CYes%0D%0AHC-0046%2CAluminium%20angle%2025mm%2CMetre%2C6.75%2C2026-09-01%2CYes%0D%0A)

## The validation checklist

Work through each check before the pilot starts. Record the result and the person responsible for fixing any gap found.

| Check | Pass or fail | Number of affected rows | Owner | Fix needed | Fix by date |
|---|---|---|---|---|---|
| Every item in scope has an item code |  |  |  |  |  |
| Every item in scope has a selling unit |  |  |  |  |  |
| Every item in scope has exactly one active list price |  |  |  |  |  |
| Every price row has an effective date |  |  |  |  |  |
| Every item code in the price list exists in the product master |  |  |  |  |  |
| No item in scope is marked unavailable without a replacement noted |  |  |  |  |  |
| Stop rules are written down and agreed |  |  |  |  |  |
| A named person is assigned to review unclear quote lines |  |  |  |  |  |

[Download this sheet as a file for Excel](data:text/csv;charset=utf-8,%EF%BB%BFCheck%2CPass%20or%20fail%2CNumber%20of%20affected%20rows%2COwner%2CFix%20needed%2CFix%20by%20date%0D%0AEvery%20item%20in%20scope%20has%20an%20item%20code%2C%2C%2C%2C%2C%0D%0AEvery%20item%20in%20scope%20has%20a%20selling%20unit%2C%2C%2C%2C%2C%0D%0AEvery%20item%20in%20scope%20has%20exactly%20one%20active%20list%20price%2C%2C%2C%2C%2C%0D%0AEvery%20price%20row%20has%20an%20effective%20date%2C%2C%2C%2C%2C%0D%0AEvery%20item%20code%20in%20the%20price%20list%20exists%20in%20the%20product%20master%2C%2C%2C%2C%2C%0D%0ANo%20item%20in%20scope%20is%20marked%20unavailable%20without%20a%20replacement%20noted%2C%2C%2C%2C%2C%0D%0AStop%20rules%20are%20written%20down%20and%20agreed%2C%2C%2C%2C%2C%0D%0AA%20named%20person%20is%20assigned%20to%20review%20unclear%20quote%20lines%2C%2C%2C%2C%2C%20%0D%0A)

## A worked example of the validation checklist

**Made up example.** Every row here is made up to show the method.

| Check | Pass or fail | Number of affected rows | Owner | Fix needed | Fix by date |
|---|---|---|---|---|---|
| Every item in scope has an item code | Pass | 0 | Person A | None |  |
| Every item in scope has a selling unit | Fail | 3 | Person A | Add unit to HC-0042, HC-0045 and one further row | 2026-10-20 |
| Every item in scope has exactly one active list price | Fail | 2 | Person B | Remove duplicate price rows for HC-0044 | 2026-10-20 |
| Every price row has an effective date | Fail | 1 | Person B | Add effective date to HC-0042 price row | 2026-10-20 |
| Every item code in the price list exists in the product master | Pass | 0 | Person A | None |  |
| No item in scope is marked unavailable without a replacement noted | Fail | 1 | Person A | Note replacement for HC-0043 or remove from scope | 2026-10-20 |
| Stop rules are written down and agreed | Fail | 0 | Person C | Draft stop rules from last month's returned quotes | 2026-10-22 |
| A named person is assigned to review unclear quote lines | Pass | 0 | Person C | None |  |

[Download this sheet as a file for Excel](data:text/csv;charset=utf-8,%EF%BB%BFCheck%2CPass%20or%20fail%2CNumber%20of%20affected%20rows%2COwner%2CFix%20needed%2CFix%20by%20date%0D%0AEvery%20item%20in%20scope%20has%20an%20item%20code%2CPass%2C0%2CPerson%20A%2CNone%2C%0D%0AEvery%20item%20in%20scope%20has%20a%20selling%20unit%2CFail%2C3%2CPerson%20A%2C%22Add%20unit%20to%20HC-0042%2C%20HC-0045%20and%20one%20further%20row%22%2C2026-10-20%0D%0AEvery%20item%20in%20scope%20has%20exactly%20one%20active%20list%20price%2CFail%2C2%2CPerson%20B%2CRemove%20duplicate%20price%20rows%20for%20HC-0044%2C2026-10-20%0D%0AEvery%20price%20row%20has%20an%20effective%20date%2CFail%2C1%2CPerson%20B%2CAdd%20effective%20date%20to%20HC-0042%20price%20row%2C2026-10-20%0D%0AEvery%20item%20code%20in%20the%20price%20list%20exists%20in%20the%20product%20master%2CPass%2C0%2CPerson%20A%2CNone%2C%0D%0ANo%20item%20in%20scope%20is%20marked%20unavailable%20without%20a%20replacement%20noted%2CFail%2C1%2CPerson%20A%2CNote%20replacement%20for%20HC-0043%20or%20remove%20from%20scope%2C2026-10-20%0D%0AStop%20rules%20are%20written%20down%20and%20agreed%2CFail%2C0%2CPerson%20C%2CDraft%20stop%20rules%20from%20last%20month%27s%20returned%20quotes%2C2026-10-22%0D%0AA%20named%20person%20is%20assigned%20to%20review%20unclear%20quote%20lines%2CPass%2C0%2CPerson%20C%2CNone%2C%0D%0A)

## What the sample catalogue row must contain

Before the pilot starts, produce one sample row for each product family in scope. The row must show the item code, item description, selling unit, list price, price effective date and availability status, all filled in and consistent with the product master. Run it through the validation checklist. If the sample row fails any check, the family is not ready.

A sample row is also useful for agreeing what the system will output. Show it to the sales team and ask whether a quote built from that row would be sent to a customer without further checking. If the answer is no, find out why and add the missing field or stop rule before the pilot.

## What can change the answer

A price change that lands during the pilot without a new effective date will produce quotes from the old price. Agree a process for publishing price changes to the catalogue before the pilot starts, not during it.

A product revision that keeps the same item code but changes the specification is a common source of wrong quotes. Decide whether a revision suffix is added to the code or whether the stop rule catches it. Either approach works. No approach does not.

## When this is the wrong tool

This checklist covers repeat catalogue items with a fixed price. It is not the right tool for bespoke engineered items where the price depends on a drawing, a material specification or a lead time that changes per order. Those lines stay with a person.

It also does not cover customer-specific pricing, framework agreements or volume discount structures. If a significant share of your quotes use customer-specific prices, check those records separately before including them in the pilot scope.

If the catalogue has fewer than twenty items in scope and the team knows them well, a manual review of the product master in a spreadsheet may be faster than working through this checklist.

## The four things every item in scope must have

| Required field | Why the system needs it | Common gap |
|---|---|---|
| Item code | The system matches the quote request to a catalogue row by code | Code is missing for newer items added outside the normal process |
| Selling unit | The system converts the requested quantity into the unit the price applies to | Unit is blank or inconsistent across rows in the same family |
| List price | The system uses this as the base for the quoted figure | Two active price rows exist for the same item and tier |
| Price effective date | The system picks the current price when more than one row exists | Date is missing so the system cannot tell which price is current |

## What to do with the result

Count the items that pass every check and the items that fail at least one. The items that pass are the pilot scope. The items that fail need a named owner and a fix date before they join the scope.

Take the validation checklist and the list of stop rules to whoever will build or configure the quoting system. A supplier who cannot say how they will handle your stop rules has not understood your quotes.

If the number of failing items is large, fix the product master first and run the checklist again. A pilot built on bad data produces bad quotes and makes it harder to judge whether the system itself is working.[

Client result . Manufacturing

1 to 3 days → under 3 hours

About 90 percent faster, per quote

Priced against the live ERP catalogue, client-confirmed.

Read how the system works](https://shurco.ai/solutions/ai-quoting-for-manufacturers/)

## Common questions

### How many items should be in scope for a first quoting pilot?

I ask for the smallest family that represents a meaningful share of quote volume. Twenty to fifty items is a workable starting point. A larger scope takes longer to validate and makes it harder to find the source of a wrong quote during the pilot.

### What is a stop rule in the context of AI quoting?

A stop rule is a written condition that tells the system to send a quote line to a person instead of completing it automatically. An example is a requested quantity below the minimum order quantity, or a discount level above a named threshold. Stop rules must be written down before the pilot starts.

### Can the system handle customer-specific prices?

Only if those prices are held in a structured record with the same fields as the list price, including an effective date and a clear link to the customer account. If customer prices live in a spreadsheet that one person maintains, validate that record separately before including it in scope.

### What should happen to a retired item that still appears in quote requests?

Add a stop rule that catches the retired item code and sends the line to a named person. That person checks whether a replacement exists and whether the customer accepts it. Do not silently substitute a new item because the description looks close.

### How often should the catalogue be reviewed once the pilot is running?

Review it whenever a price changes, a product is added or retired, or a stop rule is triggered more than a handful of times in a week. A triggered stop rule is a signal that something in the catalogue or the scope definition needs attention.

## Useful next[Free toolWhat to automate first, a scoring toolPick a task your team repeats every week and answer five quick questions. You get a plain answer on whether it is worth automating, what helps and what to watch. Score up to four tasks and it tells you where to start, and you can keep the result as a private plan page.](https://shurco.ai/tools/what-to-automate-first/)[PlaybookHow to build a business case for AI automationA finance director does not approve AI. They approve a measured task, an honest cost and a way to tell whether it worked. Here is the one page that gets a yes, and the numbers to put on it.](https://shurco.ai/guides/business-case-for-ai-automation/)[Free toolAI automation ROI calculatorPut in the hours a task takes, what an hour costs and what the system would cost to build and run. It shows the hours returned to the team and how long the automation takes to pay for itself.](https://shurco.ai/tools/ai-automation-roi-calculator/)[ServiceOne job, run for you every monthYou name one piece of repetitive work. I build the system that does it, run it every month for a fixed fee, and send anything unclear to a person on your team.](https://shurco.ai/guides/automation-run-for-you/)

## More guides[GuideAI agent pricing in 2026, what vendors actually chargeVendors now charge for agents by the conversation, the outcome, the action or the credit. Here are the published prices, what each unit really means, and how to compare them on your own workload.](https://shurco.ai/guides/ai-agent-pricing/)[ServiceA monthly test for your customer facing AI assistantOnce a month, I ask your website or phone assistant ordinary customer questions. You get what it got wrong, its exact words and what to change. The first test is free.](https://shurco.ai/guides/ai-assistant-monthly-test/)[PlaybookHow to automate daily site reports across many sitesThe report takes days because the data lives in many places and someone has to chase it. Here is how to gather it in parallel, catch the numbers that disagree and produce a report a manager can check.](https://shurco.ai/guides/automate-daily-site-reports/)[PlaybookHow to automate quoting for a manufacturer or distributorSlow quotes lose work. There are three quite different kinds of quoting automation, and most buying mistakes come from picking the wrong kind. Here is how to tell which one your quotes need.](https://shurco.ai/guides/automate-quoting-for-manufacturers/)[PlaybookHow to automate sales order entry in Business CentralCustomers email orders as PDFs, spreadsheets and free text, and someone keys each line into Business Central. Here are the three ways to take that work away, with what Microsoft's own agent does and where it stops.](https://shurco.ai/guides/automate-sales-order-entry-business-central/)[PlaybookHow to automate timesheet processing for payrollTimesheets arrive as spreadsheets, PDFs, photos and scans, and payroll has a deadline that does not move. This is the order to automate it in, and the checks that stop a wrong payslip.](https://shurco.ai/guides/automate-timesheet-processing-for-payroll/)

## Check your own quotes in two minutes

Five questions about how the work reaches you and how it is checked. You get a plain answer on whether it is worth automating, with no sign up. [Start with question one.](https://shurco.ai/tools/what-to-automate-first/?k=quotes) Or [tell me about the work](https://shurco.ai/#contact) and I will reply myself.

Web version https://shurco.ai/guides/catalogue-readiness-for-ai-quoting/
