Manage sale prices (specific prices)

ps_manage_specific_prices

Write · preview + approveCommerce · switch, until turned offTellMyShop Pro onlySaves: Commerce switch (until turned off)Visible right after install

Sets up, lists or removes sale prices for chosen dates.

TellMyShop Free: No. This tool is only in TellMyShop Pro. TellMyShop Free has only ready reports that read your store.

Ask Claude

„Put 15% off the Oslo sofa from Friday to Sunday.”

Example preview

Product 112 Sofa Oslo 3-seat: -15%, 2026-10-09 to 2026-10-11 (inclusive), all customer groups, from 1 unit, all combinations. 2,499.00 -> 2,124.15 PLN gross.

Technical details

Product promotions (specific prices): action=list shows active and scheduled promotions for one product or the whole shop, action=add creates a percentage or amount discount for one product with dates, customer group, minimum quantity and optionally a single combination (combination_id), action=delete removes one by specific_price_id. Add and delete return a preview with the price before and after. A discount above 50% gets a warning, above 90% it needs allow_big_change; a promotion without an end date runs indefinitely (warning). For many products at once use ps_manage_catalog_price_rules.

Parameters

NameTypeRequiredDescription
actionenum: list | add | deleteyeslist | add | delete.
shop_idintegernoShop ID in a multistore installation. Defaults to the shop in the connector address. IDs are listed by ps_get_shop_info.
productstringwhen: action=addRequired with add; optional filter with list. Product the way a person refers to it: "id:123", "ref:ABC-1", "ean:5901234123457", a product URL from the shop, a bare ID (1–7 digits), an EAN (8/12/13 digits) or a reference. Max 300 characters.
reduction_typeenum: percentage | amountwhen: action=addadd: percentage or amount discount.
reductionnumberwhen: action=addadd: discount value, a percentage (20 = 20%) or an amount in the shop currency. Max 1,000,000.
tax_includedbooleannoadd: an amount discount applies to the gross price (default) or the net price.
date_fromstring (YYYY-MM-DD)noadd: start of the promotion (default now), YYYY-MM-DD.
date_tostring (YYYY-MM-DD)noadd: end of the promotion (inclusive). No date = no end, YYYY-MM-DD.
customer_group_idintegernoadd: customer group (0 = all). Default 0.
from_quantityintegernoadd: from how many units in the cart. Default 1.
combination_idintegernoadd: only for one combination (variant) of the product, ID from ps_manage_combinations action=list. Without it the promotion covers all combinations.
specific_price_idintegerwhen: action=deletedelete: promotion ID from action=list.
allow_big_changebooleannoadd: allow a discount above 90% (after the user confirmed). Default false.
limitintegernoMaximum rows (default 50, max 200).
confirmbooleannofalse (default) returns a preview and saves nothing. true executes, only after the user approved the preview, together with change_token.
change_tokenstringwhen: confirm=trueToken from the preview. Required with confirm=true. Valid 30 minutes, single use, bound to the previewed arguments and data state.

Limits

One product per add. List max 200 rows (default 50). Discount above 50%: warning; above 90%: needs allow_big_change. No end date: warning. Dates are whole days (YYYY-MM-DD). It is a write tool, so without an active licence it is hidden, list included; add and delete need the Commerce switch. Revertible with ps_revert_change.

What you see before anything is saved

Claude first calls the tool without confirming it. The module returns a preview (current and new values) and a single-use token valid for 30 minutes. Claude shows you the preview and saves the change only after your yes.

Related tools

Use cases with this tool

Last updated: 2026-10-11