Storepass LogoStorepass/ DocsLog in

Pricing 2.0: Set up retail prices, buylist offers, and product rules

Created: 10/13/2026 | Last updated: 10/19/2026 | Tags: Pricing, Pricing 2.0, Retail, Buylist, Automation

Most stores want to reorganize and take advantage of the new capabilities of Pricing 2.0 without translating their current rules over. If you do want us to help you with translating your rules, please submit a ticket.

Watch this walkthrough to see Pricing 2.0 in use.

Open the walkthrough in a new tab if the video does not play in your browser.

Pricing 2.0 lets you organize retail prices and buylist offers by product group, choose a starting price, and apply adjustments, minimums, maximums, and rounding. Use branches to give different products different pricing, and preview the calculation before making it live.

Open Pricing 2.0 to work on your policies. The Pricing 2.0 sidebar entry opens a home page with your policies, saved recipes, publishing controls, automatic pricing, and approval thresholds. This guide covers setup, reusable recipes, everyday adjustments, and common pricing examples.

Before starting

  • Policies: Retail Pricing controls selling prices. Buylist Pricing controls your buylist offers. Review both before switching to the new system.
  • Branches: A branch selects a group of products within its parent. For example, a Magic: the Gathering branch can contain subbranches for new releases or particular sets.
  • Products: Choose which products belong in a branch.
  • Pricing: Choose how those products are priced. The preview beside the pricing area lets you inspect products and follow their calculations.
  • Recipes: Reuse a saved calculation or adjustment across branches and policies. Each branch uses a specific saved version until you choose to update it.
  • Pricing 2.0 home: Open a policy with Edit policy, review recipes, publish saved pricing, and manage automatic updates and approval thresholds.
Before you enable the cutover, Pricing 2.0 policy rules do not change actual prices. Your existing pricing model remains in use. Automation and price-approval settings are live store settings, however, so changes to those settings still matter before cutover.

Configure branches and select products

  1. Open Retail Pricing or Buylist Pricing and find the parent branch for your product group.
  2. Use the three-dot menu on the right of its row and choose Create subbranch.
  3. Give the branch a descriptive name, such as “Magic new releases,” and set its conditions in Products.
  4. Use all when every condition must match, or any when one matching condition is enough.
  5. Save your changes, then open Pricing to configure the calculation.

New branches start active. Turn off Active while preparing a branch you do not want included in live routing. An inactive parent also prevents its children from being used for live pricing. You can still preview an inactive branch.

A child must match its parent's conditions as well as its own. Sibling branches are checked in order, and the first matching active sibling wins. Put specific groups before broad catch-all groups. A branch with no additional conditions catches every remaining product within its parent. If no child matches, the product stays with the parent's pricing.

Use the folder tree to inspect parents, siblings, and children. You can reorder branches with their move controls or the directory's drag handles. Review the order after moving a branch, because it changes which products reach it. Branch actions also let you duplicate or delete branches; review any confirmation carefully when children are involved.

  • Product line: Select a game or catalog first, such as Magic: the Gathering. If a parent already specifies the product line, children inherit it and do not need another Product line condition.
  • Set, Rarity, and Card types: These product conditions depend on a single product line. Set and rarity fields provide catalog suggestions for that line.
  • Tags: Select listing tags to include or exclude. Several selected tags can match any of those values.
  • Shopify Product type: Match your listing's Shopify product type when that field is available.
  • Name and other available attributes: Use the operator appropriate to the field: exact values, exclusions, text contains, numeric comparisons, or dates. Selecting several exact values means the field may match any of those values.
If you cannot see Set, Rarity, Finish, the templates, or Advanced table options, first narrow the branch to one product line. A branch above product lines, or one that allows several product lines, does not provide those catalog-specific choices.

Choose a price source and calculation

On Pricing, read the calculation from top to bottom. A child can Inherit from its parent, add steps after the inherited price, or Have their own price. Choosing its own price starts with a copy of the existing calculation that you can edit independently. Returning to inheritance removes the branch's own rules from the draft after confirmation.

  • Price sources: Available choices include Market price, Low price, Median price, Low price + shipping, WPN 50k price, and Condition market price. Availability of a quote depends on the product and its market data.
  • Compare prices: Choose Market vs. Low · higher price or Market vs. Low · lower price to use the selected comparison as the starting price.
  • Current or platform price: Where offered, use the existing listing price as the starting point. Buylist pricing can use Shopify Price, but does not have to.
  • Keep the current price: Preserve the existing price instead of calculating a replacement.
  • Don’t price: Return no calculated price or offer for that output, rather than setting it to zero.

Use Add step to add adjustments:

  • Set price: Replace the running price with a fixed amount at that step. Later adjustments still apply. Use Only when to restrict the replacement, or use a Set price table for different amounts by category or range. This differs from a floor or cap, which only changes a price outside the specified limit.
  • Add a percentage / Take a percentage off: Increase or reduce the price from the previous step.
  • Floor price / Cap price: Set a minimum or maximum for the price at that point in the calculation.
  • Add an amount / Subtract an amount: Apply a fixed monetary adjustment.
  • Round up / End in .99: Apply the selected rounding behavior. Check the preview to confirm the result.
  • Only when: Limit an adjustment to matching conditions. Pricing conditions can include variant details such as Condition and Finish, or available stock and price inputs. Use a separate branch for product-level routing, such as a set or release-date group.
  • Tables: Use different adjustments for different values or ranges instead of adding a separate branch for every value.

Step order matters. For example, a discount after a floor can bring the price below that earlier floor. Put the floor after discounts if it must protect the final price, and review any later rounding or other adjustments. Check the displayed currencies when using market quotes and price ranges; a source quote may be in a different currency from your store's final price.

Create and reuse recipes

A recipe is a named, reusable pricing formula or table. Use one when several branches should share the same calculation, such as condition discounts or a market-based starting price. Branches still decide which products receive that pricing.

  • Calculation: Supplies a starting price and its adjustments. For example, start from Market price, add 5%, and round to a chosen increment.
  • Adjustment: Applies steps to the price already calculated by the branch. For example, apply a condition discount table or shared minimum prices. It does not choose a new starting source.
  1. Open the Recipes library. Saved recipes are also listed on the Pricing 2.0 home page.
  2. Choose New recipe, then Calculation or Adjustment.
  3. Give the recipe a descriptive name. For a calculation, choose its starting price. For an adjustment, begin with the incoming branch price.
  4. Use the visual pricing editor to add or edit adjustments, tables, conditions, and rounding. Review the incoming and result currencies. If a conversion is needed, use the available conversion control and check the exchange-rate input.
  5. Apply or cancel any open field edits, then save the recipe. Recipes can contain pricing steps and tables, but cannot contain other recipes.

To use a Calculation recipe, open the branch's Pricing area and choose it under Recipes in the starting-price menu. To use an Adjustment recipe, choose Add step and select it under Recipes. Make sure you are editing the intended output, such as retail, cash, or credit.

Matching inputs are connected automatically where possible. If the editor asks you to choose inputs, select the compatible policy field for each requested value, then choose Add. Check the currencies and meaning of the fields; a market quote and a platform price are different bases even when they use the same currency.

Review the recipe's position in the calculation, add any branch-specific steps after it, and save the policy. Preview representative products before publishing. A starting-price recipe replaces the starting calculation, so review the resulting steps rather than assuming the previous calculation remains.

Saving a recipe does not automatically change policies that already use it. Updating a policy's recipe version changes its saved draft; live prices use that version only after the policy is published.

Update a shared recipe or edit a local copy

  1. Open the recipe from the library or choose Open recipe from its menu in a branch.
  2. Edit its formula or table and save a new version.
  3. In Used by, review the policies and branches using the recipe. Select the branches that should adopt the saved version. Use More policies if further policies are available.
  4. Choose Update selected policies. Review the result for each policy; if an update fails, resolve the reported issue before continuing.
  5. Open the updated policies and preview the affected branches. Once ready, use Publish saved pricing on the Pricing 2.0 home page. Review both saved retail and buylist revisions in the publishing confirmation.

Branches with an older recipe version show Update available; choose Review update to open the recipe. Unselected branches keep their existing versions. Saving a new version and adopting it are separate actions.

Recipe steps are read-only inside a branch. To customize only that use, choose Detach and edit here from the recipe's menu. This copies its calculation into the branch for local editing. The detached copy no longer receives shared recipe updates. Save and preview the policy after making the change.

Create recipes from table templates

The Template choices under Add step provide ready-to-fill tables for rarity floors, finish floors, price ranges, and condition discounts. Select one product line in the branch to make the template choices available.

Apply changes saves a completed template as a reusable adjustment recipe and adds it to the branch. Save the policy afterward to retain that reference. The recipe appears on Pricing 2.0 home and in the Recipes library, and other branches can select it from Add step → Recipes. To change the shared table later, open its recipe, edit the table in the visual editor, save a new version, and update the selected policies.

Catalog-specific templates retain their product-line conditions. Reusing a rarity or finish table for a different game does not automatically replace its categories. Review the product line, row values, and conditions before reusing it.

Select products released before a certain date

  1. Create or open the branch that should receive the pricing. If appropriate, put it under the relevant product-line branch.
  2. In Products, add a Release date condition.
  3. Choose is before and select the cutoff date using the calendar. To include the cutoff date itself, choose is on or before.
  4. Save the conditions, configure the branch's pricing, and check matching products in the preview.

For example, “Release date is before January 1, 2025” selects products released earlier than that date; it excludes January 1. Release date comes from catalog data, not the date you added the listing. For an adjustment based on when inventory was listed, use Listed on in the pricing step’s conditions where available, rather than the catalog Release date.

A product without a known release date cannot be confirmed as matching a release-date condition. Fixed date comparisons use the calendar date in UTC.

Set floor pricing for every rarity

  1. Open a branch narrowed to one product line, such as Magic: the Gathering. Set the product line in this branch or inherit it from a parent.
  2. Open Pricing and choose or inherit your starting calculation.
  3. Choose Add step. Under Template, select Rarity based floor pricing.
  4. Wait for the catalog values to load. The table opens with the product line's rarity names filled in and the amounts blank.
  5. Enter your desired minimum for each rarity. Keep the table's action as Minimum price.
  6. Select Apply changes, save the policy changes, and preview products from several rarities.

A floor raises prices below the specified amount; it does not replace every price with that amount. A product already priced above its rarity's floor keeps the higher calculated price at that step. The template supplies catalog names, not recommended prices.

Set floor pricing for every finish

  1. Open Pricing on a branch narrowed to one product line.
  2. Choose Add step → Template → Finish based floor pricing.
  3. Wait for the table to open with that product line's finish names filled in.
  4. Enter a minimum amount for each finish and keep Minimum price as the action.
  5. Select Apply changes, save, and preview variants with different finishes.

The finishes come from the selected catalog, so each game uses its own options, including finishes such as Reverse Holofoil, Cold Foil, or Rainbow Foil where supported. Finish suggestions are also available when building a finish-based pricing condition or custom table. You can add both rarity and finish floors to one calculation. With no reducing steps between or after them, both minimums apply and the higher applicable floor wins. Review the rows when new rarities or finishes are introduced; the populated table reflects the values loaded when you created it.

Apply condition-based discounts

  1. Open Pricing on a branch narrowed to one product line.
  2. Choose Add step → Template → Condition Based Discounts.
  3. Review the starting percentages: Near Mint 100%, Lightly Played 85%, Moderately Played 70%, Heavily Played 50%, and Damaged 30%. Change them to your store's rates.
  4. Select Apply changes to save the table as a recipe and add it to this branch, then save the policy.
  5. Preview variants in different conditions and check the order of discounts, minimums, and rounding.

These are percentages of the incoming price, not percentages taken off. Lightly Played at 85% keeps 85% of the incoming price, equivalent to a 15% discount. The template values are editable starting points, not required rates. Review the Anything else row for conditions outside the table, and check that the starting source has not already applied the condition adjustment you intend.

Apply special pricing to new releases

  1. Create a subbranch under the relevant product line and name it “New releases.” Place it before broader siblings that would otherwise catch the same products.
  2. In Products, add Release date · days from Today.
  3. Choose is after and enter 30 for “Today − 30 days” to target releases newer than that moving cutoff.
  4. If you want only products already released, choose all and add another relative Release date condition: is before “Today − 0 days.” This excludes future release timestamps.
  5. Configure the new-release price or adjustment, save, and preview before using it live.

The cutoff moves with the evaluation time, so you do not need to edit a fixed date each day. Relative dates use elapsed 24-hour days and strict before/after comparisons. An “after Today − 30 days” condition by itself also includes future releases. For upcoming products specifically, use “is after Today − 0 days.”

Base buylist offers on Market instead of retail

Buylist prices are not tied to your retail price. You can choose a market source directly, including the same Market/Low comparison options available to retail, and then apply your own offer adjustments.

A common setup is to base retail on the higher of Market and Low, and buylist on the lower of Market and Low:

  1. In Retail Pricing, open the applicable branch's pricing source. Under Compare prices, choose Market vs. Low · higher price.
  2. Add your retail adjustments, floors, and rounding.
  3. In the corresponding branch of Buylist Pricing, select the cash output and choose Market vs. Low · lower price.
  4. Apply your desired offer percentage. For example, Take a percentage off with 60 produces 40% of that starting price before later steps.
  5. Configure the credit output separately. You can use Cash offer as its source and add a percentage for a credit bonus.
  6. Save both policies and preview the retail price, cash offer, and credit offer for representative products.

The percentages are your store's decision. Choosing the lower comparison alone does not apply a buylist discount. If you intentionally want offers to follow your existing selling price, choose the platform price source instead. Where stock-based conditions are used, review the stock shown with the previewed offer.

Create price ranges with different adjustments

  1. Open Pricing on a branch narrowed to one product line.
  2. Choose Add step → Template → Price Ranges.
  3. Review Based on. The template uses Market price when available; this field determines which range the product falls into.
  4. Review the initial ranges: 0 to less than 10, 10 to less than 100, and 100 or more. Exactly 10 goes into the second range; exactly 100 goes into the third.
  5. With Percentage of price selected, enter the percentage to apply for each range. For example, 120, 110, and 105 apply a 20%, 10%, and 5% increase respectively to the price entering the table.
  6. Edit the boundaries or add rows if needed. Check the displayed currency and avoid unintended gaps or overlaps.
  7. Select Apply changes, save, and preview products around each boundary.
“Percentage of price” is a multiplier, not gross margin. 100% leaves the price unchanged, 120% adds 20%, and 40% keeps 40%. The field used to select the range can differ from the price being adjusted: a Market-price band can adjust a calculation that started from the higher of Market and Low.

For a custom table, choose Add table under Advanced. Choose its basis and action: Set price, Percentage of price, Minimum price, Maximum price, Add amount, or Subtract amount. Set price replaces the incoming amount for a matching row; later steps still apply. Complete the row conditions and values, review the Anything else outcome for unmatched values, and apply the table. Use Only when to restrict the table where needed. Apply changes completes the table edit; save the policy afterward.

Review products and preview prices

Use the preview beside the pricing area to find products and select a product or variant. Select a variant to follow its values through the calculation, including shared recipe steps and matching table rows. The preview also displays the evaluated starting source and its amount, so you can see which source produced the result. Preview also works while the branch is inactive, so you can test a planned rule before enabling it.

  • Live price and Generated price: Compare the current listing price with the previewed calculation. A preview is not confirmation that a live update has occurred.
  • Updated times: A live-price update time appears when a reliable timestamp is available. An omitted timestamp does not mean the price was just updated.
  • Locked: The price is locked; do not assume a previewed calculation will overwrite it.
  • No market data: The relevant market baseline is unavailable. Check the source and product variant; another source may still be usable.
  • Price approval needed: There is a pending price proposal requiring approval. This indicates an existing pending proposal, not a prediction that every unsaved preview change will need approval.
  • Priced by: When a descendant supplies the final price, the breakdown identifies that branch and links to it. Follow the link to inspect its calculation.
  • View listing: Open the associated listing to inspect its current details.

Save edits to product conditions before expecting the matching product list to reflect them. Pricing edits can be explored in the calculation preview before publication. The preview is a bounded lookup, not a complete inventory count.

If the preview is empty, check the parent conditions and earlier active siblings. A broad earlier sibling can catch all products that would otherwise reach the branch you are viewing. The explanation may name a sibling when that can be established, or describe the overlap generally when it cannot.

A filtering warning means some conditions could not narrow the initial search. Returned candidates are still checked against all branch conditions. It does not mean every result is incorrect, but a limited search can miss matching products. Review the filtering details and make the product-line and catalog conditions as specific as possible.

Configure automation and price approvals

Open the Pricing 2.0 home page and find Automatic pricing and Approval thresholds.

  • Automatic price updates: Enable or disable automated pricing using the toggle. The change saves immediately. Enabling Pricing 2.0 does not turn automatic pricing on; review this setting separately.
  • Enable price approvals: Require review when both the percentage change and monetary change exceed your configured thresholds.
  • Percent threshold: Enter the percentage change threshold. This field is required while approvals are enabled.
  • Price change threshold: Enter the monetary change threshold. This field is also required while approvals are enabled.
  • Auto approve price increases: Allow increases to be approved automatically when this option is enabled.

Save your approval settings after editing them. Use Review pending changes to approve or reject queued price changes. Existing automation, locks, and approval requirements still apply after switching to Pricing 2.0.

Enable Pricing 2.0 and publish later changes

The deadline to move to Pricing 2.0 is November 20, 2026. Enabling Pricing 2.0 publishes both the saved retail and buylist policies, so review both policies first.
  1. Save the Retail Pricing and Buylist Pricing policies you intend to use. Finish or discard incomplete edits.
  2. Preview representative products, including low-value items, different finishes, new releases, boundary prices, and products routed into subbranches.
  3. Return to the Pricing 2.0 home page and review the Pricing 2.0 activation section.
  4. Choose Enable pricing 2.0. Read the warning and check the saved retail and buylist revisions shown.
  5. Choose Confirm enable only when those saved policies are ready to control live pricing. Choose Cancel to keep reviewing.

After cutover, live pricing uses the published policies. To change them, edit and save your policies, review the preview, then use Publish saved pricing on the Pricing 2.0 home page. Saving alone does not update the published pricing rules. The deadline notice itself does not enable the cutover for you. Publishing includes both saved retail and buylist revisions, including any recipe updates adopted into those drafts. The page shows the saved revision numbers but does not compare them with the currently published revisions.

If the activation section reports that published policies need attention, review the error, correct and save the affected policies, and publish valid saved pricing to resume live pricing.

If you leave a policy or recipe with unsaved edits, use the unsaved-changes warning to stay and save or discard them deliberately. When finished, check actual listing prices and any pending approvals as automated pricing runs.