Change price base from Wholesale app

Is there a way to change the default price to the Whole price outside of the storefront via an app extension? Currently, I can only change the displayed price using JavaScript. Although the calculations in the cart and checkout are handled correctly by Shopify functions, the prices on other pages (e.g., product card, product detail, quick view, sticky add to cart, etc.) still require JavaScript calculations and replacement.

Hi, could you clarify what you mean by “outside of the storefront”? Do you mean outside of cart and checkout, or a different surface altogether, such as a mobile app?

It would also help to know which wholesale app you’re referring to, and whether the store is using B2B catalogs.

Thank for your reply.

This means that changing prices in Product Cards and PDPs requires manual JavaScript. If you’re building a B2B app, the only way to change prices on the storefront is using JavaScript. You can’t interfere with the pricing function in your theme’s Liquid.

That’s correct, and its how others would do it, for example Sparklayer you would load the B2B pricing information via javascript.


Thanks Luke for understanding my point. However, handling it with JavaScript can easily lead to UI issues and performance problems if the problem is complex and has a lot of logic. Hopefully, Shopify can allow apps to access and change prices using Liquid’s price call functions.

For example:
{{ product.price | money_with_currency }}

This retrieves the B2B price.

While I can’t confirm on Shopify’s behalf, I doubt that will ever happen.

Otherwise it essentially defeats the purpose of Shopify’s B2B offering.

Thank you so much Luke. But, I hope the shopify can open this function

Agreed, this is very unlikely, especially now that B2B has been expanded to Basic, Grow, and Advanced plans.

Apps can update prices client-side with JavaScript, but they can’t change the values returned by Liquid price objects. Catalogs are the supported path for displaying B2B pricing: Customizing B2B pricing using catalogs.

Your assessment is correct, but B2B apps will face obstacles if JavaScript is intentionally blocked in the browser, and customers can still see the price when using the catalog block pricing feature.

That limitation is exactly why catalogs are the supported path for B2B pricing. Apps can expose their own data to Liquid through app-owned metafields, but they can’t override built-in Liquid price objects such as product.price.