{"title":"Variable pricing for donations and tips","slug":"variable-pricing","url":"https://support.storeconnect.com/articles/variable-pricing","url_markdown":"https://support.storeconnect.com/articles/variable-pricing.md","subtitle":null,"summary":"Let customers choose how much they pay by enabling variable pricing on a price book entry. Ideal for donations, tips, pay-what-you-want products, and recurring charitable contributions.","type":"Help_Documentation","video_url":"","keywords":"variable pricing, custom price, donation pricing, pay what you want, price book entry, variable pricing options, donation product, custom amount, nonprofit pricing","last_modified":"2026-09-15T02:32:04+0000","body_markdown":"Variable pricing lets customers choose how much they pay for a product at checkout. You can present a set of predefined amounts, allow free-entry above a minimum, or both. It is most commonly used for donation products and pay-what-you-want pricing, but can also be adapted to allow for adding tips at an on-site business.\n\n## How it works\n\nWhen variable pricing is enabled on a price book entry, customers see a pricing picker on the product page instead of a fixed price. The product's **Price** (or **Sale Price**, if set) acts as the minimum — customers cannot pay less than this amount.\n\nYou can also set predefined amounts for customers to select from, and optionally set a maximum to cap contributions. Here's what it looks like.\n\n![No theme donation page in storeconnect](https://res.cloudinary.com/hzkr6fi81/image/upload/v1781135983/media/DonationPurchaseMockup.png)\n\n## Enable variable pricing on a product\n\nVariable pricing is configured per price book entry, not on the product itself. This lets you apply variable pricing in specific price books while keeping a fixed price in others.\n\n1. Open the product in Salesforce and go to its **Price Book Entries** related list.\n2. Open the **Price Book Entry** for the price book you want to configure.\n3. Check **Enable Variable Pricing** (`s_c__Enable_Variable_Pricing__c`).\n4. Set the **Price** (or **Sale Price**) to the minimum amount you want to allow. Customers cannot pay less than this value.\n5. In **Variable Pricing Options** (`s_c__Variable_Pricing_Options__c`), select the preset amounts you want to offer at checkout. The available amounts are **$50, $100, $250, $500, $1,000, $2,000, $5,000**, and **$10,000**. Select **Other Amount** to allow customers to type in any amount above the minimum.\n\n   :::tip\n   For a typical donation setup, select a few mid-range amounts (for example, $50, $100, $250) and also select **Other Amount** so donors can give any amount they choose.\n   :::\n\n6. Select **Save**.\n\nIf you leave **Variable Pricing Options** empty, only the **Other Amount** free-entry field appears — customers can type any amount at or above the minimum.\n\n## Preset amounts in detail\n\n**Variable Pricing Options** is a multiselect picklist with fixed values. The available preset amounts are $50, $100, $250, $500, $1,000, $2,000, $5,000, and $10,000. If you need a specific amount that is not listed (for example, $25), set the product's minimum **Price** to that amount instead and rely on **Other Amount** for free entry.\n\n- Select one or more preset amounts to show as quick-select buttons at checkout.\n- Select **Other Amount** to add a free-entry field alongside any preset buttons.\n- You can combine presets with **Other Amount** — customers see both buttons and the free-entry field.\n\nIf **Variable Pricing Options** is left empty, customers see only the free-entry field and can type any amount at or above the minimum.\n\n## Set a maximum amount\n\nTo cap the amount a customer can pay, set **Variable Pricing Max Amount** (`s_c__Variable_Pricing_Max_Amount__c`) on the price book entry. Leave it blank to allow any amount above the minimum.\n\nYou can also use **Variable Pricing Min Amount** (`s_c__Variable_Pricing_Min_Amount__c`) to set a minimum that is higher than the product's base price — useful if you want a floor above zero while keeping the listed price lower.\n\n:::note\nIf both **Variable Pricing Min Amount** and the product **Price** are set, the higher of the two values is used as the effective minimum.\n:::\n\n## Set up recurring donations\n\nVariable pricing can be combined with a subscription product to accept recurring donations. When a customer checks out, they choose their donation amount — that amount is then charged automatically on each renewal cycle.\n\n:::note\nSubscription pricing only supports fixed price. The amount a donor chooses at checkout is stored as their recurring charge (the Term Price on their Subscription record) and is used for every subsequent renewal. Donors cannot change their amount between cycles without re-purchasing.\n:::\n\n### Step 1: Configure the product\n\n1. Open the **Product** record and check **Virtual** — donation products do not ship.\n2. Scroll to the **Subscription** section and set the following fields:\n\n   | Field | Example value | Notes |\n   |---|---|---|\n   | **Subscription Pricing** | Fixed Price | The only supported value |\n   | **Subscription Type** | Evergreen | The donation continues until the donor cancels |\n   | **Subscription Term** | `28` | The number of units between charges |\n   | **Subscription Term Unit** | Day | Combined with Term 28, this charges every 28 days |\n   | **Subscription Behavior** | Always Process, Always Charge | Automatically charges the saved payment method each cycle |\n\n3. Select **Save**.\n\nFor a calendar-month cycle instead of a 28-day cycle, set **Subscription Term** to `1` and **Subscription Term Unit** to `Month`.\n\nSee [Subscription products](subscription-products) for the full set of subscription configuration options.\n\n### Step 2: Enable variable pricing on the price book entry\n\nFollow the steps in [Enable variable pricing on a product](#enable-variable-pricing-on-a-product) to set a minimum donation amount and optional predefined amounts. The price the customer selects at checkout is charged on every subsequent renewal.\n\n## POS support\n\nVariable pricing works in StoreConnect POS, making it practical for collecting donations at a physical counter, processing tips at point of sale, or accepting pay-what-you-want payments in person.\n\nWhen a staff member adds a variable-priced product to a POS cart, a modal opens to capture the amount before the item is added. The same minimum and maximum constraints configured on the price book entry apply — staff cannot enter an amount below the minimum or above the maximum.\n\nIf the product has predefined amounts set in **Variable Pricing Options**, those amounts are available for quick selection in the modal alongside a free-entry field (if **Other** is enabled)."}