Time-limited and on-request prices
Your supplier clears a warehouse and gives you six weeks of better conditions on forty articles. Sales wants them in the shop on Monday and gone on the 15th without anyone having to remember to switch them off. In the same catalogue sit the made-to-order assemblies that should never show a number at all.
Those are the two things every B2B price book needs and most spreadsheets handle badly: a price that stops on a date, and an article that deliberately has no price.
Where a validity window can sit
Validity exists at two levels, and choosing the right one is most of the job.
| Put the window on | When | Effect |
|---|---|---|
| The price list | The whole price book is temporary: a campaign, a quarter, a contract term | Outside the window the list does not resolve at all; buyers fall through to whatever is next |
| The entry | A few articles inside an otherwise permanent list are on action | Only those rows expire; the rest of the list is untouched |
A rule of thumb: if the reason for the price is temporary, put the window on the list. If only the articles are temporary, put it on the entries.
A campaign that ends by itself
- Create a price list: Order Management › Prices › Price lists › New price list. Code it for
what it is:
aktion-q1-2026. - Edit list and set:
- Priority high enough to beat the lists it must override.
50beats a contract list at10; leave it at0and it will not beat anything. - Valid from and Valid until: the campaign window.
- Account / Contact / Channel: usually empty for a public campaign, or a channel if the action is online-only.
- Logged-in buyers only: on, unless anonymous visitors should see the campaign too.
- Priority high enough to beat the lists it must override.
- Add entries only for the articles on action.
When Valid until passes, the list stops resolving. Nobody has to remember to switch it off, and nothing has to be deleted.
A price on a few articles for a few weeks
Put the window on the entries instead:
- Open the list and find the entry, or add a new one.
- Set Valid from and Valid until on the entry.
- Save.
The entries grid shows the window in its Valid column, so you can see at a glance which rows in a list are temporary.
Project prices
A project price is a price for one job, for one customer, for a defined period. It is a contract price with a short life, and the only thing that keeps it from quietly becoming permanent is the end date.
Use a price list bound to the account with a hard Valid until, and code it for
the project rather than the customer: proj-halle7-2026, not a second kd-10042.
That way, when it expires, it is obvious what expired.
Articles with no published price
Set an entry's Type to On request. The price call then answers "on request" instead of an amount, and the article stays in the catalogue where buyers can still find it, compare it and enquire about it.
Use it for:
- made-to-order assemblies and configured articles,
- spare parts whose price depends on the machine and its build year,
- articles priced from a daily raw-material or metal index,
- anything where the honest answer is "it depends".
Two rules:
An on-request entry outranks a price. Where it applies, the answer is "ask us" even if another list carries a number. That makes it a deliberate choice, and it means you should not create one for an article you want priced from another list.
"No price" is not zero. An article that no list prices also resolves as on
request. Never type 0.00 to express "we do not publish this"; zero is orderable,
and somebody will order at it.
What to check
- On the price list grid, the Validity column shows the window you intended, in the right year. A campaign ending in 2025 when you meant 2026 never applies at all.
- Ordering matters: a campaign at priority
50and a contract list at10means the campaign wins. Confirm that is what you want for the accounts involved. - After a campaign ends, put one of its articles in a test cart and confirm the price returned to the list price rather than staying low.
- For an on-request article, confirm the storefront shows an enquiry route and not a price of zero.
Next
- Import prices in bulk — campaign lists at catalogue scale.
- Check which price a buyer sees.