Pricing & Multi-Currency¶
Vectis uses a five-level pricing hierarchy that resolves the best price for every buyer automatically. Combined with multi-currency support, this covers wholesale tiered pricing, account-negotiated rates, and international storefronts.
Price Resolution Hierarchy¶
When a product price is requested, the system checks these levels top to bottom and returns the first match:
| Priority | Level | Description |
|---|---|---|
| 1 (highest) | Managed Price | Manually set override for a specific variant — useful for clearance or one-off deals |
| 2 | Location Price | Price tied to a specific B2B account location (e.g., a warehouse or branch) |
| 3 | Account Price | Price negotiated for an entire B2B account |
| 4 | Group Price | Price assigned to a customer group (e.g., "Gold Tier Distributors") |
| 5 (lowest) | Default (Price List) | The base price list entry for the variant |
Tip
You only need to set prices at the levels you use. Most products only have a default price list entry. Override at higher levels only when needed.
Price Lists¶
Price lists are the foundation of default pricing. Each list has:
- Currency — the currency for all entries in the list.
- Scheduling — optional
valid_fromandvalid_todates for seasonal or promotional pricing. - Priority — when multiple lists match, the highest-priority list wins.
A single variant can appear in multiple price lists (e.g., one in USD, one in MXN, one for a holiday sale).
Volume Pricing¶
Volume tiers let you offer lower per-unit prices at higher quantities:
| Minimum Quantity | Price |
|---|---|
| 1 | $10.00 |
| 10 | $9.00 |
| 50 | $7.50 |
| 100 | $6.00 |
Volume tiers are defined per price list entry. The system automatically selects the best tier based on the line item quantity.
Multi-Currency¶
Channel Configuration¶
Each channel defines:
- Base currency — the canonical currency for accounting and reporting.
- Supported currencies — the set of currencies buyers can transact in.
Exchange Rates¶
Exchange rates are admin-managed in the Settings → Currencies section. Each rate pair maps a source currency to a target currency with a conversion factor.
Warning
Vectis does not fetch live exchange rates automatically. An admin must update rates manually or via API integration. Stale rates can cause pricing discrepancies.
Price Resolution with Currency¶
When a buyer requests a price in a target currency:
- Direct match — if a price list entry exists in the target currency, use it.
- Fallback + conversion — if no direct entry exists, use the base-currency price and convert using the stored exchange rate.
Direct entries always take priority, giving you full control over international pricing.
Price List Conversion Wizard¶
The admin panel provides a bulk conversion wizard to generate target-currency price list entries from your base-currency list. This creates real entries (not dynamic conversions), so you can review and adjust individual prices after generation.
To use it: Pricing → Price Lists → select a list → Convert to Currency.
Account & Customer Currencies¶
- B2B accounts can have a preferred currency set at the account or location level.
- B2C customers have a
preferred_currencyfield on their profile.
When a buyer with a preferred currency logs in, the storefront defaults to showing prices in that currency.
Note
The preferred currency must be in the channel's supported_currencies list. If it is not, the storefront falls back to the channel's base currency.
Admin Panel¶
From Pricing in the admin you can:
- Create and manage price lists with scheduling and currency.
- Set volume tiers on individual price list entries.
- Override prices at the account, location, or managed level.
- Manage exchange rates between currency pairs.
- Run the conversion wizard to bulk-generate multi-currency entries.