DoPricer CPQ: How do I update Custom Price List Properties in product records?
Keeping your custom price lists up to date in the HubSpot product library
Overview
If your portal uses custom price lists — for example, a Wholesale price list or an OEM price list — those prices are stored directly on each product record in your HubSpot product library.
When a new line item is added to a Deal or Quote, DoPricer reads the relevant custom price property from the product record at that moment and applies it to the line item. This means that keeping your product records up to date is all that's required — when a sales rep next adds that product to a Deal or Quote for an eligible customer, DoPricer will read and apply whatever value is on the product record at that time.
This article explains where custom prices live, how to create the properties, how to update them, and what to expect after you make a change.
Prefer to let us handle it? Creating and connecting custom price list properties requires precision — a small error in an internal property name can prevent DoPricer from applying the correct prices.
If you'd rather have HubDo Support set this up or make changes on your behalf, get in touch via the chat on this page or email us at support@hubdo.com. Please include your HubSpot portal ID#, a description of what you need, and any relevant context — we'll take it from there.
What are custom price list properties?
Custom price list properties are number fields added to your product records during DoPricer configuration. Each property stores the price for a specific price list and currency combination.
Examples of custom price list properties:
- Wholesale USD — the wholesale price for this product in US dollars
- OEM USD — the OEM price for this product in US dollars
- Wholesale GBP — the wholesale price for this product in British pounds
Unlike the core DoPricer properties — which are created automatically on installation and grouped under "DoPricer" — custom price list properties need to be created manually. If you're comfortable working with HubSpot properties, you can create these yourself by following the steps below. Alternatively, HubDo Support can set them up for you.
The critical rule is that the internal property name must exactly match the naming convention DoPricer expects — this is how DoPricer knows which property to read when applying a price. Custom price list properties are placed in the "Price" property group on each product record, alongside HubSpot's own standard price properties, so all price-related data is visible together in one place.
How these differ from HubSpot's standard product properties
HubSpot products come with a set of built-in properties — such as Name, SKU, and Price — that underpin how HubSpot handles products across Deals, Quotes, line items, and integrations. These standard properties have fixed internal API names (for example, hs_sku for SKU, hs_price_usd for the standard USD price) and cannot be renamed or removed.
DoPricer's custom price list properties are different. They are fully custom HubSpot properties — created specifically for your portal — that sit alongside the standard properties without replacing them. DoPricer reads these custom properties when applying prices, while HubSpot's own quoting and reporting tools continue to use the standard properties as normal. This separation is what allows DoPricer to support multiple parallel price lists (Wholesale, OEM, and so on) without interfering with how HubSpot itself handles product data.
Naming convention
Each custom price list property must follow a strict naming convention:
The internal property name must begin with
custom_price_and end with a 3-letter ISO currency code that is active in your HubSpot portal.
Examples:
custom_price_wholesale_usdcustom_price_oem_usdcustom_price_wholesale_gbp
This naming convention is how DoPricer identifies custom price list properties and the currency each one applies to, ensuring the correct price is matched to the deal or quote currency at the time of processing.
How to create a custom price list property in HubSpot
If you want to create your own custom price list properties rather than asking HubDo Support to do it, follow these steps carefully.
Pay particular attention to the internal name — this cannot be edited after the property is saved.
If an error is made, archive the incorrect property and create a new one.
Step 1 — Open the property settings
- In HubSpot, click the Settings icon (gear icon) in the top navigation bar.
- In the left sidebar, go to Properties.
- At the top of the page, use the Select an object dropdown and choose Products.
Step 2 — Create the new property
- Click Create property (top right).
- Fill in the following fields:
Field What to enter Object type Products Group Price Label The display name, e.g. Wholesale USD Field type Number → Formatted number - Before saving, expand the Internal name field. HubSpot will have auto-generated a name — delete this and type your own, following the naming convention exactly. For example:
custom_price_wholesale_usd⚠️ Important: The internal name cannot be changed after the property is created. Double-check it matches the naming convention before saving.
- Click Create to save the property.
Repeat this process for each price list and currency combination you need (e.g. custom_price_wholesale_gbp, custom_price_oem_usd).
Step 3 — Add the property to the DoPricer Pricelist dropdown on the Company record
Once the product property has been created, you need to make it selectable on Company records so that sales reps (or admins) can assign the price list to a customer. This means adding it as an option in the DoPricer Pricelist dropdown property on the Company object.
- In HubSpot Settings → Properties, change the object to Companies.
- Search for and open the DoPricer Pricelist property (
dopricer_pricelist). - In the Options section, click Add an option.
- Set the Label to the display name you want to appear in the dropdown — e.g. Wholesale USD.
- Set the Internal value to the exact internal name of the product property you just created — e.g.
custom_price_wholesale_usd.⚠️ The internal value here must exactly match the internal property name on the product record. This is how DoPricer links the company's assigned price list to the correct price property on the product.
- Click Save.
The new option will now appear in the DoPricer Pricelist dropdown when viewing or editing a Company record, and can be assigned to any customer.
How DoPricer uses these prices
When a new line item is added to a Deal or Quote, DoPricer checks whether the associated company has a price list assigned. If it does — for example, "Wholesale USD" — DoPricer looks up the matching property on the product record and applies that value as the selling price on the line item.
NOTE: If the custom price property is empty for a particular product, DoPricer leaves the price unchanged — the standard HubSpot product price is used for that line item.
How to update custom prices on product records
Updating a single product
- In HubSpot, go to Commerce → Products (or Sales → Products, depending on your navigation).
- Search for and open the product record you want to update.
- Scroll to the Price property group.
- Find the custom price list property you need to update (e.g. Wholesale USD).
- Click to edit the value and enter the new price.
- Save the record.
The updated price will be used by DoPricer from the next new line item created for that product onwards. Existing line items already on Deals or Quotes are not affected retroactively.
Updating custom prices in bulk
If you need to update prices across a large number of products, the most efficient method is a HubSpot import.
- Export your product library from HubSpot (Products → Actions → Export). Make sure to include your custom price list properties in the export.
- Update the relevant price columns in the exported file.
- Re-import the file into HubSpot, mapping the columns to the correct properties.
HubSpot's import tool will update existing records when a unique identifier (such as the product SKU or HubSpot Record ID) is matched.
Tip: There is no need to turn off the DoPricer Master Switch when updating product records. The Master Switch only needs to be turned OFF when bulk-importing line items, to avoid those line items being processed by DoPricer. Updating product library records does not trigger DoPricer.
How to verify the update worked
After updating a product record, you can confirm the change by:
- Navigating back to the product record and checking the price property value.
- Creating a test line item on a Deal associated with a company that has the relevant price list assigned, then refreshing the page to see the price DoPricer applied.
- Checking the DoPricer Price Message property on the line item — it will show something like
Custom price 150 applied from custom_price_wholesale_usd, confirming the custom price was used.
Things to be aware of
Changes apply to new line items only. Updating a product's custom price does not retroactively change any line items already created. Only new line items created after the update will use the new price.
Currency matching matters. DoPricer always applies a custom price in the same currency as the deal or quote. If a company is assigned the "Wholesale USD" price list but a deal is created in GBP, DoPricer will fall back to the standard HubSpot GBP price for that product rather than converting or applying the Wholesale USD value. Two things must be in place for the correct price to apply:
- The correct currency-specific price list property must be populated on the product record (e.g.
custom_price_wholesale_gbpfor GBP customers). - The matching option must be selected in the DoPricer Pricelist dropdown on the Company record (e.g. "Wholesale GBP"). This dropdown's internal values are tied directly to the internal property names on the product record — DoPricer uses the selected dropdown value to look up the exact property to read. If the wrong option is selected, or no option is selected, DoPricer will not find the custom price and will silently fall back to the standard HubSpot price for that currency. No error is shown, so it's worth double-checking both sides are correctly set for each customer.
One price list per company. Each company can have only one active price list at a time (e.g. Wholesale USD). It is not possible to assign both Wholesale USD and Wholesale GBP to the same company record simultaneously.
Empty properties default to standard pricing. If a custom price property is left empty on a product, DoPricer does not apply a custom price for that product — it uses whatever the standard HubSpot price is for the deal currency. This is intentional behaviour, not an error.
Internal name changes are not possible. Once a custom price list property has been created in HubSpot, its internal name is locked. If you create a property with the wrong internal name, you will need to create a new one with the correct name. Contact HubDo Support if you're unsure.
Need help?
If you're unsure which custom price list properties are configured in your portal, or if you need new price list properties created (for example, to add a new currency or a new tier), contact HubDo Support at support@hubdo.com.