# Wholesale price calculator

- Human page: https://happytails.ai/en/business-tools/wholesale-price-calculator/
- Markdown: https://happytails.ai/en/business-tools/wholesale-price-calculator.md
- Structured JSON: https://happytails.ai/agents/en/business-tools/wholesale-price-calculator/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `wholesale-price-calculator` |
| Category | business-tools |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Use the visible action or interactive controls. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

Each price level is the price above it minus that partner margin, rounded to the currency decimal places. Margins are shares of the selling price, not markups on cost. Processing stays on your device.

### Inputs and settings

No free-text input is required. Use the file inputs and/or settings below.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `retailPrice` | Retail price | text | "39.99" |  |
| `retailerMargin` | Retailer margin (%) | text | "45" |  |
| `distributorMargin` | Distributor margin (%) | text | "20" |  |
| `unitCost` | Your unit cost | text | "9.80" |  |
| `currency` | Currency code | text | "USD" |  |
| `precision` | Currency decimal places | select | "2" | Allowed: 0, 1, 2, 3, 4, 5, 6 |
| `rounding` | Rounding | select | "half-up" | Allowed: half-up, half-even, half-down, down, up, floor, ceiling |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

Prices and costs up to 1,000,000,000,000 with up to the selected currency decimal places (0 to 6). Margins from 0 to 99.999999 percent with up to six decimal places. Calculated on your device. Download a JSON report and a CSV summary.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "wholesale-price-calculator",
  "category": "business-tools",
  "built": true,
  "requirements": "Prices and costs up to 1,000,000,000,000 with up to the selected currency decimal places (0 to 6). Margins from 0 to 99.999999 percent with up to six decimal places. Calculated on your device. Download a JSON report and a CSV summary.",
  "implementation": {
    "fields": [
      {
        "key": "retailPrice",
        "label": "Retail price",
        "value": "39.99",
        "type": "text",
        "inputMode": "decimal",
        "maxLength": 32
      },
      {
        "key": "retailerMargin",
        "label": "Retailer margin (%)",
        "value": "45",
        "type": "text",
        "inputMode": "decimal",
        "maxLength": 32
      },
      {
        "key": "distributorMargin",
        "label": "Distributor margin (%)",
        "value": "20",
        "help": "Enter 0 when you sell directly to retailers.",
        "type": "text",
        "inputMode": "decimal",
        "maxLength": 32
      },
      {
        "key": "unitCost",
        "label": "Your unit cost",
        "value": "9.80",
        "type": "text",
        "inputMode": "decimal",
        "maxLength": 32
      },
      {
        "key": "currency",
        "label": "Currency code",
        "value": "USD",
        "type": "text",
        "maxLength": 3,
        "autoCapitalize": "characters"
      },
      {
        "key": "precision",
        "label": "Currency decimal places",
        "value": "2",
        "type": "select",
        "values": [
          "0",
          "1",
          "2",
          "3",
          "4",
          "5",
          "6"
        ]
      },
      {
        "key": "rounding",
        "label": "Rounding",
        "value": "half-up",
        "type": "select",
        "values": [
          "half-up",
          "half-even",
          "half-down",
          "down",
          "up",
          "floor",
          "ceiling"
        ],
        "labels": {
          "half-up": "Half up (ties away from zero)",
          "half-even": "Half even (ties to even)",
          "half-down": "Half down (ties toward zero)",
          "down": "Toward zero (truncate)",
          "up": "Away from zero",
          "floor": "Toward negative infinity",
          "ceiling": "Toward positive infinity"
        }
      }
    ],
    "registrationFamily": "exact-money-form-reference",
    "presentation": "metrics",
    "note": "Each price level is the price above it minus that partner margin, rounded to the currency decimal places. Margins are shares of the selling price, not markups on cost. Processing stays on your device.",
    "input": false,
    "experience": {
      "automatic": false,
      "single": true,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "Prices and margins",
      "placeholder": "39.99",
      "help": "Enter the retail price, partner margins and your unit cost in the fields. Up to 1,000,000 characters. Review the settings before running.",
      "action": null
    },
    "mode": "explicit",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}
```

## Page guide

Work back from a retail price through retailer and distributor margins to your wholesale price. See your own profit, margin and markup per unit, and whether the retailer price is keystone.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

### How to use Wholesale price calculator

1. Enter the retail price and the retailer margin as a percentage.
2. Enter the distributor margin, or 0 if you sell directly to retailers.
3. Enter your unit cost, currency and rounding, then calculate.
4. Review your wholesale price, margin and markup, then download the report.

## Useful next steps

- [Margin](https://happytails.ai/en/calculators/margin/) ([Markdown](https://happytails.ai/en/calculators/margin.md))

- [Markup](https://happytails.ai/en/calculators/markup/) ([Markdown](https://happytails.ai/en/calculators/markup.md))

- [Unit price calculator](https://happytails.ai/en/business-tools/unit-price-calculator/) ([Markdown](https://happytails.ai/en/business-tools/unit-price-calculator.md))

## Margins come off the selling price

A 45 percent retailer margin on a 39.99 retail price leaves 21.99 for the retailer to pay, after rounding to cents. A 20 percent distributor margin on 21.99 leaves a wholesale price of 17.59. Margin is a share of the price a partner sells at, as defined in Levy, Weitz and Grewal, Retailing Management, 10th edition (McGraw-Hill, 2019). Markup is profit divided by cost, so a 9.80 cost and a 17.59 wholesale price give a 44.29 percent margin but a 79.49 percent markup.

### Rounding and keystone

Each price level is rounded to the currency decimal places with the rounding mode you choose before the next level is calculated, so the report also shows the retailer margin after rounding. Keystone pricing means the retailer sells at twice the price it pays, a 100 percent markup or a 50 percent margin, so the keystone check compares the retail price with the price the retailer pays, not with your wholesale price. In the example the retailer pays 21.99 and twice that is 43.98, above the 39.99 retail price, so it is not keystone. The calculator uses only the margins you enter and does not include freight, payment fees or promotions.
