Pricing
Keep catalog prices up to date when Business Central prices change
Where to find it: Admin → Settings → Advanced Settings → price_index_on_website_access
When you'd use this: If you update prices in Business Central frequently (e.g. weekly or fortnightly) and need your B2B customers to see the latest prices on catalog and product pages immediately, without delays of up to 24 hours.
What you need first:
- Admin access to Advanced Settings
- B2B customers configured with customer-specific pricing in Business Central
Set it up:
- Go to Admin → Settings → Advanced Settings
- Find the setting
price_index_on_website_access - Set the value to
1to enable - Save your changes
How it works:
When this setting is enabled, the platform refreshes customer-specific prices whenever a logged-in B2B customer browses catalog pages or searches for products. This ensures that prices updated in Business Central appear on the storefront within minutes, rather than being cached for up to 24 hours.
Checkout prices are always current regardless of this setting.
Troubleshooting:
-
Catalog shows old prices after a Business Central price update — Enable
price_index_on_website_access. If still experiencing delays after enabling, verify the customer is logged in when browsing (price refresh only triggers for authenticated users). -
Different prices on catalog vs. checkout — This indicates catalog prices are stale. Enable
price_index_on_website_accessto reduce the delay between Business Central updates and catalog display. -
Price updates fail with "no getPrices response from Business Central" or a Business Central error code — This indicates your Business Central connection is not configured correctly for the store. Verify the connection settings in your ERP integration configuration, including credentials and endpoint URLs. If the error includes a specific Business Central error code or message, use that to diagnose the issue in Business Central itself.
-
Price requests fail with "No requested warehouse code is usable" or "warehouse-code-malformed" — The warehouse code supplied in the price request contains invalid characters (such as commas) or is blank. Check your store configuration to ensure warehouse codes are single, non-blank values that match codes defined in your ERP. If multiple codes appear joined with commas in the error message, correct the configuration to supply them as separate values.
-
Price requests fail with "No requested warehouse code resolves to a site" — The warehouse codes in the request do not match any warehouse configured in your ERP. Verify that the codes in your store configuration exactly match warehouse codes defined in your ERP system. Check for typos, extra characters, or codes that no longer exist in the ERP.
Control when Quick Order fetches live prices from the ERP
Where to find it: Admin → Settings → Advanced Settings → quick_order_live_pricing
When you'd use this: If your ERP integration is under heavy load or Quick Order performance is slow, you can disable live pricing calls while customers build their order. Customers will see cached prices (or a placeholder if no cached price exists) as they add lines, and the platform fetches the authoritative price once when they add to cart.
What you need first:
- Admin access to Advanced Settings
- Quick Order enabled on your storefront
- B2B customers configured with customer-specific pricing in your ERP
Set it up:
- Go to Admin → Settings → Advanced Settings
- Find the setting
quick_order_live_pricing - Set the value to
OFFto disable live pricing during line entry - Save your changes
How it works:
When quick_order_live_pricing is OFF, the Quick Order screen shows cached prices as customers add product lines, without calling your ERP's pricing API. If no cached price exists for a product, Quick Order displays a neutral placeholder instead.
The platform fetches the authoritative live price from the ERP in a single call when the customer clicks add to cart, ensuring the cart always contains current pricing.
When the setting is ON (the default), Quick Order fetches live prices from the ERP as each line is added.
Troubleshooting:
-
Quick Order is slow when adding product lines — Set
quick_order_live_pricingto OFF to reduce the number of ERP pricing calls. Customers will see cached prices during line entry and the live price will resolve when adding to cart. -
Prices on Quick Order don't match the cart — This is expected when
quick_order_live_pricingis OFF and cached prices are stale. The cached price is a preview; the cart always shows the current ERP price. -
Quick Order shows a placeholder instead of a price — When
quick_order_live_pricingis OFF and no cached price exists for the customer, product, and unit of measure, Quick Order displays a placeholder. The live price appears when the customer adds the line to their cart.
Calculate sales tax for B2B orders
Where to find it: Admin → Settings → Advanced Settings → online_b2b_tax
When you'd use this: If your B2B customers need sales tax calculated at checkout based on their shipping address. This is required when selling to B2B customers in states where you have tax obligations.
What you need first:
- Admin access to Advanced Settings
- Business Central configured with tax area codes for the regions where you collect sales tax
- Ship-to addresses configured in Business Central with the appropriate tax area codes
Set it up:
- Go to Admin → Settings → Advanced Settings
- Find the setting
online_b2b_tax - Set the value to enable tax calculation for B2B customers
- Save your changes
How it works:
When enabled, the platform calculates sales tax for B2B customers at checkout based on the tax area code associated with their shipping address in Business Central. The tax area code determines which tax rates apply to the order.
B2C (retail) customers always have tax calculated based on their shipping address, regardless of this setting.
Troubleshooting:
-
Tax not calculated for B2B orders shipping to a taxable state — Enable the
online_b2b_taxsetting. Verify that the ship-to address in Business Central has the correct tax area code assigned for that location. -
Tax showing for B2B customers when it shouldn't — Disable the
online_b2b_taxsetting if your B2B customers are tax-exempt or handle tax through a different process.
Calculate tax on freight charges (Sage 300)
Where to find it: Admin → System → Shipping Setup → ERP Shipping
When you'd use this: If you use Sage 300 and charge freight at checkout using non-stock items (e.g. NS000006), and those freight charges should be taxable. This ensures the webstore checkout total matches the Sage 300 order total after posting.
What you need first:
- Sage 300 ERP integration configured
- Non-stock items set up in Sage 300 for freight charges
- Tax authorities and rates configured in Sage 300
- ERP Shipping configured to use non-stock items for freight
How it works:
When ERP Shipping applies a freight charge using a non-stock item (such as NS000006), the platform calculates tax on that freight amount based on the tax authorities and item tax class configured in Sage 300. The tax is included in the checkout total before the order is submitted.
The platform determines the tax rate by:
- Looking up the customer's tax authorities and buyer tax classes
- Finding the item tax class for the non-stock item (defaults to class 1 if not configured)
- Applying the appropriate tax rate percentages from Sage 300
This ensures the webstore total matches what Sage 300 calculates after order posting.
Troubleshooting:
-
Freight charge appears at checkout but no tax is added — Verify the non-stock item is configured with the correct tax class in Sage 300. Check that tax authorities are assigned to the customer and have rates defined for the item tax class being used.
-
Webstore checkout total is lower than Sage 300 order total — This typically indicates freight tax is missing from the webstore calculation. Confirm your shipping method is using a non-stock item from Sage 300, and that the item has tax configuration in place.
Display tax-inclusive prices (Sage X3)
When you'd use this: If you sell in regions that require tax-inclusive pricing (such as Australia or New Zealand with GST), and your Sage X3 customer records are configured to price orders tax-inclusive using the "Price -/+ tax" flag.
What you need first:
- Sage X3 ERP integration configured
- Customer records in X3 with the "Price -/+ tax" flag set to tax-inclusive
- Price lists and tax rates configured in X3
How it works:
For customers configured as tax-inclusive in X3, the platform anchors prices on the tax-inclusive amount throughout the pricing calculation. This matches X3 order behavior, where tax is built into the net price and the exclusive price is derived from it.
When a tax-inclusive customer browses your storefront, product prices display with tax already included. At checkout, line item prices and totals reflect the same tax-inclusive amounts that will appear on the X3 order after it posts.
For customers configured as tax-exclusive in X3, prices display and calculate tax-exclusive as usual, with tax shown separately.
Troubleshooting:
-
Storefront price differs by a cent from the price in X3 — Verify the customer's "Price -/+ tax" flag in X3 matches how they should be priced. Tax-inclusive customers should show prices that match the X3 tax-inclusive amount. Tax-exclusive customers may see deliberate rounding behavior that matches X3's calculation method.
-
Checkout total doesn't match X3 order total — Check that the customer's tax configuration in X3 is correct, including tax rates and the "Price -/+ tax" flag. Ensure price lists in X3 are defined with the correct tax treatment (inclusive or exclusive).