Skip to content
KanchanFlow
QuotingBuilding· Wave 1 · M4

Contract and customer price lists with effective dates

The price you agreed in March, honoured in November without anybody having to remember it. A list against the customer, dated, that the quote reads before it reads your cost buildup.

In short

Contract price lists in the KanchanFlow RFQ-to-Order CRM hold negotiated prices against a customer or dealer, with effective and expiry dates, and take precedence over the standard cost buildup when a quote is priced. It is the first level of the CPQ pricing hierarchy, targeted at Wave 1 Milestone 4 alongside the buildup itself.

Status card for Contract and customer price lists: in development, target Wave 1 · M4, with the plans it is included in.

What it is

Every shop with repeat customers has agreed prices, and almost nobody has them anywhere the estimator can see at the moment of quoting. They live in a signed supply agreement in a filing cabinet, an email thread from two purchasing managers ago, or one person's memory. The failure is predictable in both directions: you quote a standard price to an account that negotiated ten percent off and then honour the mistake, or you quote the agreed price for a part on an agreement that expired in June and lose the increase you were entitled to take.

A contract price list fixes that by putting the agreement in the system, against the customer or dealer it belongs to, with the dates it is valid between. When an estimator prices a part for that account, the quote reads the list before it reads anything else. The line shows that it priced from a contract list rather than from the buildup, and it shows which list and when that list expires — so an estimator quoting in February can see that the agreement runs out in March and raise it before the buyer does.

The order of precedence is the same one the manufacturing CPQ work uses, and it is fixed: contract price, then customer price, then quantity break, then the standard cost buildup. A contract list is the strongest of the four because it is the one you signed. The buildup is the fallback for parts nobody has agreed a price for yet. This is why the two pieces of work carry the same milestone — a pricing hierarchy with a missing top level is not a hierarchy.

The uncomfortable case is a contract price below your margin floor, and it happens: material moved, or the agreement was signed at a volume that never materialised. We do not silently suppress the floor because a contract exists, and we do not block a quote you are contractually obliged to honour. The line prices at the contract price, flags as below floor with the shortfall shown against the current buildup, and routes for approval by the same rule as any other below-floor line. The exception is recorded. What that gives you is a list, at renewal time, of every contract line you are currently losing money on — which is the conversation the agreement renewal should actually start from.

Dealers work the same way. A distributor buying at a channel discount carries their own list, dated, so a partner order priced through the portal and a partner order priced at your desk produce the same number. Where a dealer holds exclusivity on a SKU, the exclusivity rules and the price list are two separate records and stay that way: one says who may sell it, the other says at what price.

Capabilities

What it does

A list locked to a customer or a dealer

Prices attach to the account, not to the part in general. Two customers can carry different agreed prices for the same part number and neither can see the other. A dealer list and a direct-customer list are the same object with a different owner.

Effective and expiry dates on every line

A price is valid between two dates. Quotes dated inside the window use it, quotes outside it fall through to the next level of the hierarchy, and an estimator quoting near the end sees the expiry on the line rather than finding out afterwards.

Precedence over the standard cost buildup

Contract price, then customer price, then quantity break, then buildup. A part on an in-force contract list prices from the list, and the line records which list it came from so the number is traceable at renewal or in a dispute.

Below-floor contract prices flagged, not hidden

When an agreed price sits under your current margin floor, the line prices at the agreed number, flags with the shortfall against today's buildup, and routes for approval like any other below-floor line. You honour the contract and you can see what it is costing.

Quantity breaks inside a contract list

An agreement that says one price to 500 pieces and another above it holds both. The break ladder sits inside the list rather than being a separate arrangement somebody has to remember to apply.

Renewal exposure in one report

Which agreements expire in the next ninety days, which lines are below floor, and how much revenue is priced off each list. That report is the agenda for the renewal meeting rather than a task somebody does the week the agreement lapses.

Currency and unit held on the list

A list carries its own currency and unit of measure so a USD agreement with a Mexican customer does not get re-rated by a quote in pesos. FX on the quote is locked at pricing time, as it is on every quote today.

Step by step

How it works

The order these steps happen in matters more than the feature list above it.

  1. 1

    Load the agreement

    Create a list against the customer or dealer and enter the agreed part numbers and prices, or import them from the spreadsheet the agreement was negotiated in. Each line carries its price, its unit, its currency and any quantity breaks the agreement includes.

  2. 2

    Set the window

    Give the list an effective date and an expiry date. A list with no expiry is a decision you make explicitly rather than a default, because an agreement nobody ever reviews is how a shop ends up quoting 2024 prices in 2027.

  3. 3

    Quote against it

    When an estimator prices a part for that account inside the window, the quote reads the contract list first. The line shows the price, the list it came from and the expiry date, so nothing about the number is a mystery.

  4. 4

    Handle the exceptions

    If the contract price is below your current margin floor, the line flags with the shortfall against the buildup and routes for approval by the standard rule. If the part is not on the list, pricing falls through to customer price, then quantity break, then the four-column buildup.

  5. 5

    Watch the expiry

    Lists approaching expiry surface before they lapse, with the revenue priced off them and the lines currently under floor. Renewal starts from evidence rather than from whichever price the buyer remembers.

  6. 6

    Keep the history

    A superseded list is kept, not overwritten. A quote sent in April against the old agreement still shows the old price and the list it came from, which is how you answer a question about that quote two years later.

What this is not

This is not contract lifecycle management — we hold the prices and their dates, not the clauses, redlines, signature workflow or renewal negotiation of the agreement itself. It is also not a rebate or chargeback engine.

This is not an ERP, MRP, CAD, BOM, or advanced CPQ system — it manages customer RFQs, quotes, follow-ups, and order handoff.

Tier availability

What you get on each plan

These rows come from the same feature matrix the pricing page publishes. If the two ever disagree, the matrix is wrong and we fix it.

Tier availability for Contract and customer price lists. Prices and limits are on the pricing page.
PlanAvailability
StarterNot available. Starter prices from the 2-column basic cost buildup and has no quantity breaks.
ProfessionalIncluded, with dated contract and customer lists, quantity breaks inside a list, and below-floor flagging through the margin guardrails.
EnterpriseIncluded, with custom cost bases and multi-entity price lists across plants.

Starter is $39 per user per month, Professional $49, Enterprise $99 plus a $2,000 monthly platform fee. Annual billing is 17% lower. See the full matrix.

Interface

What it looks like

Interface capture

Development build of a customer contract price list with effective and expiry dates, agreed prices and a quantity break inside one line.

Development build capture. Customer names and prices are sample data.

Interface capture

Development build of a quote line showing that it priced from a contract list, with the list name, the expiry date and the shortfall against the current buildup.

Development build capture, not production. The calculation basis is not final.

Screenshots are described rather than mocked up. Captures are taken from the build current at the date shown in the changelog, on a sample workspace.

Questions about contract and customer price lists

Contract price, then customer price, then quantity break, then the standard cost buildup. A contract list is the strongest because it is the one you signed. The buildup is the fallback for parts where nothing has been agreed.

See a live quote draft built from a real RFQ

Fourteen days, no credit card, sample data pre-loaded. If it does not fit your shop, we will tell you in the first call.

  • Delaware LLC
  • SOC 2 Type II
  • USA Data Centers (AWS)