← All package workshops
Commerce / INTERACTIVE WORKSHOP

Build and compare pricing candidates

Priceable v1.2.0

Edit saved offer rows, exact scope dimensions, quantity ranges, customer list priority and effective dates. Every query calls the installed 1.2 calculator.

01 / CONFIGURE

Choose a scenario. Change the inputs or build a sequence of commands.

02 / RUN

Execute the installed package against a new fictional example.

03 / INSPECT

Follow the result, actual calls, generated output and integration code.

THE WORKBENCH

Make it your example.

Your server-side changes are temporary. External-service examples use local response fixtures. Start with sample data.

Execution result

Waiting for your first run
No execution yetEdit inputs ↑

Start with a preset, or change the input and run it.

The behavior is the example.

Your result will show the values, decisions and generated output from the actual package.

EXPLORE THE PACKAGE

What you can exercise here.

INTERACTIVE

Saved row resolution

Quantity ranges, effective clock, exact scope set, ordered customer lists, default fallback and configured no-match exception.

INTERACTIVE

Price row inspection

Actual selected row ID, raw amount and all candidates remain visible.

HOST INTEGRATION

Financial/domain policy

Tax, currency conversion, ownership, exact accounting totals and price-list authorization are application concerns.

UNDERSTAND THE BEHAVIOR

Resolve the saved offer before calculating a total.

Edit offer rows and comparison queries to explore quantity ranges, exact scope maps, customer-list priority and an explicit effective clock.

01

Offers and queries are editable records

Each offer supplies a list, inclusive quantity bounds, up to four decimal places, optional dates and a scope map. The primary query comes from the controls; comparison-query rows resolve independently against the same saved offers.

02

Scopes match an exact set

A query for region and channel requires the corresponding complete scope set. Missing or extra dimensions change eligibility. An unscoped offer is not a universal substitute for a differently scoped query. Inspect candidate_rows and each query result.

03

Priority and time are inputs

Customer list IDs are checked in supplied priority order before the default list. The effective clock controls dated eligibility independently of the real server clock. A no-match can return null or exercise the configured PriceNotFoundException policy.

04

The saved amount is the accounting starting point

query_results includes raw_amount from the selected row. unit_price and the illustrative extended_total use the legacy float projection in this host. Taxes, currency conversion, exact accounting arithmetic and customer eligibility need application policy.

GO FURTHER

Try the boundary cases.

  1. Cross every quantity boundary

    Choose Compare quantity breaks and add comparison-query rows for quantities 9 and 10. Expected: quantities 1 and 9 select 24.0000; 10 selects 20.0000; 50 and 100 select 17.5000 with the default future clock. Change a maximum quantity to see a tier cease to qualify.

  2. Remove a required dimension

    Run Exact region and channel, then One missing dimension does not match. Expected: the complete west/wholesale map finds the scoped offer; the incomplete map has no exact match. Add a matching offer row instead of assuming partial matching.

  3. Compare customer-list priority

    Add partner and priority offers at the same quantity with different amounts. Set customer_lists to ["priority","partner"], then reverse it. Expected: the first eligible supplied list changes the selected row; the calculator does not simply choose the lowest amount.

  4. Move the effective clock and inspect missing policy

    Run Read a historical effective clock and compare with the default. Expected: a row expired at the later clock can qualify historically. Remove all offers and toggle throw_when_missing: both have no selected row, but the exception policy records a rejected resolution when enabled.

COMPOSE THE RESPONSIBILITIES

Useful alone.
Better when the boundaries fit.

Use a Stow line’s product and quantity as pricing inputs, then resolve customer lists and scope policy in the application. Save the accepted row, currency and authoritative amount with an order instead of repricing historical purchases implicitly.

Stow NestedTerms Read every API and recipe