SettingsPricing Configuration

Pricing Configuration

PromoSync offers flexible pricing options to match your business model. This guide covers all pricing strategies and configuration options.

Pricing Strategies

MQ (Minimum Quantity)

Uses the lowest quantity tier price from the supplier’s pricing table.

Best for: Distributors selling to end consumers or businesses ordering small quantities.

// Example supplier pricing table
{
  "tiers": [
    {"minQuantity": 24, "price": 12.50},
    {"minQuantity": 48, "price": 11.00},
    {"minQuantity": 144, "price": 9.50},
    {"minQuantity": 288, "price": 8.25}
  ]
}
 
// MQ strategy selects: $12.50 (24 unit tier)

HUNDREDS

Calculates price per 100 units, useful for high-volume pricing.

Best for: Businesses that quote prices per hundred or per thousand units.

// Same pricing table
// HUNDREDS calculation:
// Uses 144-tier: $9.50/unit × 100 = $950.00 per hundred

MAP (Manufacturer’s Advertised Price)

Uses the manufacturer’s suggested retail price when available. For now, we are only processing SanMar’s MAP pricing.

Best for: Retail stores maintaining manufacturer pricing agreements.

// Product with MAP pricing
{
  "mapPrice": 24.99,
  "msrp": 29.99
}
// MAP strategy uses: $24.99

Setting Your Default Strategy

  1. Navigate to Settings > Pricing
  2. Select your Default Pricing Strategy from the dropdown
  3. Click Save

The default strategy applies to all new product imports unless overridden.

Markup and Discount Configuration

Global Markup

Apply a markup to all products:

SettingDescriptionExample
Markup TypePercentage or Fixed AmountPercentage
Markup ValueThe markup amount40
Apply ToCost or RetailCost
// 40% markup on $10.00 cost
{
  "cost": 10.00,
  "markupType": "percentage",
  "markupValue": 40,
  "finalPrice": 14.00  // $10 × 1.40
}

Fixed Amount Markup

Add a fixed dollar amount:

// $5.00 fixed markup on $10.00 cost
{
  "cost": 10.00,
  "markupType": "fixed",
  "markupValue": 5.00,
  "finalPrice": 15.00  // $10 + $5
}

Discount Configuration

Apply discounts instead of markups:

// 15% discount on $20.00 price
{
  "price": 20.00,
  "discountType": "percentage",
  "discountValue": 15,
  "finalPrice": 17.00  // $20 × 0.85
}

Price Rounding

Configure how final prices are rounded:

OptionExampleResult
None$14.37$14.37
Nearest Cent$14.374$14.37
Nearest 5 Cents$14.37$14.35
Nearest 10 Cents$14.37$14.40
Nearest Dollar$14.37$14.00
Charm Pricing (.99)$14.37$14.99
Charm Pricing (.95)$14.37$14.95

Charm Pricing Example

// Charm pricing rounds up to .99
{
  "calculatedPrice": 14.37,
  "roundTo": 0.99,
  "finalPrice": 14.99
}

Compare-At Pricing

Set original prices to show discounts:

Automatic Compare-At

Automatically set compare-at price based on a higher tier:

{
  "price": 12.50,           // MQ tier price
  "compareAtPrice": 15.99,  // From MSRP or calculated
  "savings": "22%"
}

Manual Compare-At Markup

Set compare-at as a percentage above your selling price:

SettingValueResult
Selling Price$14.00
Compare-At Markup30%
Compare-At Price$18.20$14.00 × 1.30

Tier Pricing Display

Store complete pricing tiers in metafields for storefront display:

// Stored in product.metafields.psrestful.tier_pricing
{
  "tiers": [
    {"minQuantity": 24, "price": 12.50, "pricePerUnit": 12.50},
    {"minQuantity": 48, "price": 11.00, "pricePerUnit": 11.00},
    {"minQuantity": 144, "price": 9.50, "pricePerUnit": 9.50},
    {"minQuantity": 288, "price": 8.25, "pricePerUnit": 8.25}
  ],
  "currency": "USD",
  "lastUpdated": "2024-01-20T12:00:00Z"
}

Display in your theme:

{% raw %}{% assign tiers = product.metafields.psrestful.tier_pricing.value.tiers %}
<table class="tier-pricing-table">
  <thead>
    <tr>
      <th>Quantity</th>
      <th>Price Each</th>
    </tr>
  </thead>
  <tbody>
    {% for tier in tiers %}
    <tr>
      <td>{{ tier.minQuantity }}+</td>
      <td>{{ tier.price | money }}</td>
    </tr>
    {% endfor %}
  </tbody>
</table>{% endraw %}

Currency Settings

SettingDescription
Source CurrencyCurrency from supplier (usually USD)
Target CurrencyYour store’s currency
Exchange RateManual or automatic conversion

Note: PromoSync uses Shopify’s currency settings for display. Supplier prices are typically in USD.

Pricing Calculation Order

PromoSync calculates final prices in this order:

  1. Get Base Price - From pricing strategy (MQ, HUNDREDS, MAP)
  2. Apply Markup/Discount - Percentage or fixed amount
  3. Apply Rounding - Based on rounding settings
  4. Set Compare-At - If configured
Supplier Cost: $10.00
  → MQ Strategy: $10.00
  → 40% Markup: $14.00
  → Charm Pricing: $14.99
  → Compare-At (30%): $19.49 → $19.99

Final: $14.99 (was $19.99)

Advanced: Per-Supplier Pricing

For supplier-specific pricing rules, see Custom Pricing (MDP).

Troubleshooting

Prices Not Updating

  1. Check that the product is still syncing (not removed from sync)
  2. Verify the supplier has updated pricing
  3. Manually trigger a sync from the product page
  4. Check for pricing errors in the sync log

Incorrect Pricing

  1. Verify your pricing strategy selection
  2. Check markup/discount configuration
  3. Review rounding settings
  4. Compare with supplier’s actual pricing table

MAP Pricing Unavailable

Not all suppliers provide MAP pricing. If MAP is selected but unavailable:

  • PromoSync falls back to MQ pricing
  • A warning is logged in the sync report