DE EN ES NL
App Support

UZM Price List — Help & Getting Started

UZM Price List generates customer price lists from Microsoft Dynamics 365 Business Central at the push of a button, per customer, with full price resolution across all active price lists, quantity breaks, and individually controlled items. Output as Excel or freely designed by layout, plus API access for a webshop or customer portal.

Features at a glance

Full price resolution

Takes into account all active price lists: customer, customer price group, customer discount group, and "all customers". The lowest price or the highest discount % wins for the customer.

Quantity breaks

Output as their own lines, even when they are expressed in Business Central through discounts rather than tiered prices.

Control which items appear

Three mechanisms: exclusive items, excluded customer items, excluded purchase codes.

Two output formats

"Excel (Standard)" with no setup needed, or "By layout", freely designed as xlsx or CSV, set up per recipient rather than coded.

Price resolution through another customer

For chains and groups: head-office terms apply in addition to or instead of a customer's own terms, effective in both the file and the sales order.

Email delivery & API

Send the finished file straight from the order, or pull the same data live through an API page, for example for a webshop.

Requirement: the new pricing experience

UZM Price List reads the tables of Business Central's new pricing experience ("Price List Header" and "Price List Line"). This feature must be turned on for the tenant, via Feature Management → "Feature Update: New sales pricing experience". If it's off, there are simply no price list lines to read, the app states this explicitly when starting a job, instead of delivering an empty file.

Getting started

  1. Open Price List Setup (search "Price List Setup"): go through supplier details for association formats, item fields, price calculation, exclusive items, and exclusion lists once.
  2. Open Price List Generator (search "Price List Generator"): enter customer no., format, layout if needed, item range, and optionally an email address.
  3. Generate with price list: a job is created and calculated in the background via the job queue, you can keep working while it runs.
  4. Pick up the file: once the job shows "Completed", download via "Download Excel" or resend via "Send by email".

Note: the generated file is attached to the job. "Clean up jobs" deletes completed and failed jobs along with their files, download anything you still need first.

How prices are determined

For every item in the chosen range, the app looks for the price that actually applies to this customer, from all active, valid price list lines of type "Sale". What matters is the assignment of the individual line, not the header. Among all matching lines, the lowest price wins, and independently, the highest discount %. Only lines with no unit or with the item's base unit are considered. If no matching line is found, the app falls back to the item card's sales price, unless "Use prices from price lists only" is set. The VAT rate comes from the VAT posting matrix, if no line is found there, the column is deliberately left at 0 rather than inventing a figure.

Price resolution through another customer

For chains, groups, and buying alliances: via the field "Price Through Customer No." on the customer card, you point to the customer that holds the negotiated terms, instead of maintaining them multiple times. Tenant-wide, you decide whether that customer's terms apply in addition to the customer's own, or replace them. The rule applies equally to the generated price list and to the sales document, so the file and the order never drift apart. Multi-level chains are allowed, a circular reference is rejected when entered.

Parallel items: a second number range

Some tenants keep a second item number with a leading letter alongside a main item number, for example items sold by the metre alongside a piece item: M10000000 belongs to 10000000. An item filter from 10000000 to 39999999 never catches this second range, because it sits alphabetically somewhere else entirely.

There are two settings that work together for this. In Price List Setup, the field Parallel Item Prefix names the letter, for example "M". On the price list job, you then set Include Parallel Items, the filter "From 10000000 / To 39999999" then also delivers M10000000 through M39999999.

As long as no prefix is set up, the checkbox stays disabled, since it would have no effect. Without a From/To filter, the second range is already included anyway, because then all items are output.

Output formats

Excel (Standard): needs no setup, writes an xlsx file with eleven fixed columns, from item number to quantity break. The quick answer for the inside sales team.

By layout (freely designed): builds the file entirely from setup, as xlsx or CSV, with freely chosen columns, order, and headings per recipient. A unit remapping is also available, for example PCS to the ISO code PCE.

Price list via the API

The same price lines can be retrieved without a file, for example for a webshop or a customer portal. The API page is called preislisteLines (publisher "uzmanibu", group "pricelist", version v1.0). Three filters are mandatory: customerNo, fromItemNo, and toItemNo, this prevents an accidental pull of the entire item master. Results are generated fresh on every call.

Trial period and licensing

After installation, the app runs free for 30 days with full functionality, no registration required. The countdown starts on first use, not on installation: an app that sits unused in the tenant at first doesn't quietly burn through its trial.

You can see the status in Price List Setup, in the Licensing section, for example "Trial (29 day(s) left)" or "Licensed until 08/10/2027".

For production use you receive a license key in the format YYYYMMDD-XXXX-XXXX, which you enter in the License Key field. The key is bound to the tenant name and valid for one year, you'll receive a new one to renew it. Ordering and questions: pricelist@uzmanibu.lv.

What gets locked: once the trial ends, the two ways prices leave the tenant are locked, generating a price list and the API pull.

What stays open: setup, layouts, and the job list remain usable, files already generated can still be downloaded. Your data stays untouched.

The key is bound to the exact tenant name. If the tenant is renamed in Business Central, you'll need a new key, just get in touch, it's done in minutes.

Frequently asked questions

What happens if the new pricing experience isn't enabled?
Without "New sales pricing experience" there are no price list lines to read. The app explicitly points this out instead of delivering an empty file. A fallback to the item card's sales price remains possible, but enabling the feature is required for a full price list.

Are quantity breaks recognized even when they're expressed through discounts rather than tiered prices?
Yes. The app collects breaks from all matching price list lines with a minimum quantity greater than zero, explicitly including discount lines too.

Can I define my own columns and file formats for individual associations or customers?
Yes, via the "By layout" format. Header and columns are fully defined in setup, no coding required, as xlsx or CSV.

How do I get prices for a webshop or customer portal?
Via the preislisteLines API page, with the same price lines as in the file, retrievable live with customer and item filters.

Can an item be visible to only certain customers?
Yes, via price list exclusive items. Optionally, this rule can also be extended to order entry, with a warning or a block.

What happens once the trial period ends?
Existing data and settings remain intact. Only generating new price lists and the API pull then require a valid license key. Files already generated can still be downloaded.

Why does the same item appear multiple times in the file?
Those are quantity breaks. Each break is its own line with its minimum quantity, written only when its price differs from the base price. If there's a break at quantity 1 or below, the base line is dropped instead, since it could never apply anyway.

Support

Questions or feedback? Contact us at pricelist@uzmanibu.lv.